← All work

Branch · 2024 to 2026

A design system for a multi-product platform.

Building the design system that scales a complex enterprise SaaS surface through a multi-year product transformation. Component library, governance, intake process, dark mode readiness, and design-engineering ownership model.

Role

Sr. Director, Product Experience

Duration

Multi-year program

Surface

Multi-product platform

Adoption

94% across product surface

The problem

A growing platform, an aging system.

Branch's product surface had grown across multiple products and customer segments. The existing design system was struggling to keep up: components had drifted, custom one-offs had multiplied, design tokens were inconsistent, dark mode was unsupported, and Figma-to-code alignment was unreliable.

The cost was real. Designers and engineers spent significant time recreating what should have been shared infrastructure. New product modernization work risked compounding the inconsistency. Customer-facing UI quality varied across products. Without a stronger system, every new product surface added entropy.

The approach

Foundation, governance, adoption.

Foundation

Rebuild the building blocks.

Typography revisions, badge component corrections, design token normalization, dark mode feasibility, and a production audit that mapped every inconsistency back to a system gap. The work of making the primitives right so everything built on top could trust them.

Governance

Rules, intake, ownership.

A formal governance model with a moratorium on custom components, a structured intake process for new requests, and a defined ownership model between design and engineering. Without governance, a design system entropies back into a component zoo.

"No new custom components."

Adoption

Make the system the path of least resistance.

Public documentation, Storybook integration, a canonical spec repository for component documentation, training sessions, and integrating the system into the broader product modernization program. Adoption isn't enforced. It's earned by making the system easier than the alternative.

The system itself

Light. Dark. One system.

Inputs. Buttons. Checkboxes. Tabs. Dialogs. Alerts. Dropdowns. Pagination. Empty states. Progress. Toasts. Tokens for primary, accent, border, destructive, positive, caution, magenta, purple, and orange in foreground and background variants. All shipped from one source of truth across both themes.

Light theme

Default surface

Dark theme

Theme-aware tokens

Click either canvas to view at full size.

The operational artifacts

What we built, what we shipped, what we measured.

01

Component library

Reusable components across primitives, composites, and patterns. Versioned, documented, and synchronized between Figma and code.

02

Storybook integration

Live component playground for engineers. Documentation, props, states, and accessibility specs in one place.

03

Canonical spec repository

Single source of truth for component specifications, design tokens, and usage guidelines accessible to design and engineering.

04

Public documentation

Public-facing system documentation for designers, engineers, and product partners. Adoption requires accessibility.

05

Governance model

Formal governance with named owners, decision rights, and a moratorium on new custom components. Rules of the road.

06

Intake process

Structured intake for new component requests. Triage, prioritization, and a defined path from request to release.

07

Production audit

Full audit of live product surfaces to map system drift, inconsistency, and the cost of custom one-offs.

08

Dark mode readiness

Feasibility assessment, token architecture, and roadmap for dark mode support across the platform.

09

Training sessions

Structured onboarding and training for designers and engineers adopting the system. Reduces support burden.

The governance flow

How a request becomes a tracked, finished system change.

Before governance, every team was creating their own custom components and nothing was getting logged. The system was reverting to the problem the system was supposed to solve. The fix was a real intake with three defined paths, a triage gate, and auto-generated tracking work per request type. The rule that made it work was simple: no new custom components.

01 · INTAKE One form 02 · TRIAGE The gate 3 paths out PATH A New component PATH B Component change PATH C Bug fix DONE All sub-issues complete

One form · One gate · Three paths · Sub-issues auto-generated per path · One source of truth

The rule that made it work

No new custom components.

The design system stays stable and untouchable during feature development. New patterns go through the intake. Without that rule, every team optimizes for their own feature timeline and the system silently drifts back into a component zoo. With it, the system gets cared for.

Before and after

From scattered to systematic.

The design system didn't ship as a deck. It shipped as a product. Two side-by-side comparisons of the same screen, before the system and after. Same data, same purpose, different experience.

Before · Summary dashboard

Legacy design language. Dense layout, no hierarchy, no AI surface.

After · Home

Card-based, personalized, Ivy assistant integrated. Dark theme, system tokens, clear hierarchy.

Before · Partner Management

Long sidebar of partners. Dense tabbed settings. No signal hierarchy.

After · Partner Network Deep Linking

Active partners surfaced with conversion lift. Ivy recommendation banner. Clear primary and secondary states.

The legacy product shipped without a system. The new product shipped because of one.

The ownership model

Design and engineering as co-owners.

What design owns

  • Component specifications, props, and states
  • Design tokens and visual language
  • Accessibility standards and contrast requirements
  • Usage guidelines and pattern documentation
  • Figma library structure and governance
  • Intake triage and prioritization

What engineering owns

  • Component implementation in code
  • Storybook maintenance and updates
  • Token implementation and theming infrastructure
  • Release process and versioning
  • Accessibility implementation and testing
  • Performance and bundle size discipline

Co-ownership isn't a slogan. It's a decision rights model. When design and engineering both have skin in the system, the system gets cared for. When neither owns it, the system rots.

The system in production

One system. Many surfaces. Two themes.

The proof of a system is whether it scales. Four shipped product surfaces built on the same tokens, components, and patterns. Different product areas, different data densities, different themes. One system underneath all of them.

Analytics surface

Email campaign metrics with vertical benchmarks. Six-month performance trend with CTI and CTO benchmark lines.

Experiment surface

Campaign incrementality testing. Branch Confidence Score, p-value, 50.4% conversion lift, test vs control chart.

Geographic surface

Store performance heat map. KPI cards with year-over-year deltas, sparklines, and US geographic density visualization.

Same system, different product

Same component library. Different customer surface. Light theme instead of dark. The system travels.

Click any surface to view at full size.

What the system did

Adoption, velocity, discipline.

01 · Adoption

94%

System adoption across the modernized product surface. Against a 90% target. Earned through documentation, training, and quality rather than enforced through mandate.

02 · Velocity

2×

Throughput per product pod after the system reached steady state. Less time rebuilding the basics. More time shipping the work the customer can see.

03 · Discipline

0

Custom components built outside the system since governance went live. Every new pattern came through intake. The rule held.

Foundation made the system trustworthy. Governance made it durable. Adoption made it the path of least resistance.

What I learned

Three lessons for anyone scaling a system.

Audit first, build second.

The production audit was the unlock. You can't fix a system you haven't measured. Every "we need a new component" request can usually be solved with an existing component plus better documentation.

Governance is the work.

A design system without governance is a component zoo. The intake process, the moratorium on custom components, and the ownership model are not bureaucratic overhead. They are what makes a system durable.

Adoption is earned.

Mandates don't drive adoption. Quality does. Documentation does. Training does. The system reached 94% adoption because it was genuinely better than the alternative, not because anyone was forced to use it.

The meta-point

A design system isn't a component library.
It's an operating contract between design and engineering.

The components are the visible artifact. The real product is the relationship: shared decision rights, agreed governance, a public source of truth, and a commitment from both functions to maintain it. The system shipped 94% adoption, 2× pod velocity, and zero custom components since governance went live. That's what an operating contract looks like when it works.