Across roles I've designed the paths users take from intent to outcome: onboarding, configuration, creation, error recovery, edit and undo, multi-step setup. This page collects four recent flow projects in enterprise B2B SaaS, each a complex creation or migration experience rebuilt around how people actually work and grounded in research I ran myself.
Enterprise customers needed to create links at scale, but the only path was a single-item form repeated by hand or a homegrown spreadsheet workaround. Demand ranged widely: some teams needed thousands of links at once, others worked in tightly-named batches of a handful. The team had a CSV-based bulk creation wizard in prototype, with no evidence it worked for the people who'd use it daily.
I ran my own usability research across three groups: internal team members moderated, current customers unmoderated, and external growth marketers unmoderated. I synthesized the findings into a phased design: a download-template, fill, upload, validate, create flow scaled for tens of thousands of records in a single file. Validation moved up front, so the system returns valid, invalid, and blank counts before anything is created. A two-tab preview splits clean records from errors and lets someone download just the failed rows, fix them, and re-upload. I sequenced it into three milestones so the highest-value path shipped first.
Links go stale. App paths change, tags get set wrong at creation, onboarding mistakes compound. Customers had no way to edit links in bulk, so they pinged an admin to fix each one by hand. The challenge: a flow that edits across three tiers of fields, analytics tags, routing and behavior, and social metadata, without letting someone accidentally change the wrong set of links.
I mapped the flow from the PRD, then ran a design critique that surfaced the gaps: no back navigation, undefined cancel behavior, no enforcement of the selection limit, an unresolved partial-success state. I moved the design to a stepped wizard with a persistent left rail showing exactly which links were selected, so the affected set is always visible before any change is applied. Customer interviews reinforced the safety requirement directly.
The campaign builder needed an A/B testing section so marketers could test creative variants against each other. Experimentation flows are deceptively complex: traffic has to sum correctly, the control case has to be unambiguous, and the interface has to behave whether someone has one variant or twenty.
I pinpointed every flow and edge case before handoff: entry states for one versus multiple variants, traffic that doesn't sum to 100 percent, the can't-delete-the-last-variant rule, maximum variant count, holdout group behavior, and what control actually means. I mapped them into a single diagram and wrote the flow up so engineering could build it without coming back with questions.
Variant management from one to twenty variants, per-variant traffic control, and adjustable holdout groups, validated live with enterprise customers before refinement.
A legacy feature set was being migrated into a redesigned platform experience. Two configuration surfaces had to move without disrupting the customers depending on them. The job: make the new location feel like an upgrade while preserving existing behavior exactly.
I mapped both features as paired configuration and runtime flows: the configuration path for where settings live in the new navigation, the runtime path for what the end user experiences when a link fires. I designed the create, edit, and apply paths to converge at a shared runtime, and built the migration in so existing configurations carried over automatically, with no customer action required and behavior preserved.