02 / IBM · Carbon · 2020 — 2023

Design system governance at scale

Contributed patterns, review rituals, and accessibility guardrails to Carbon so hundreds of product teams could ship faster together.

Role

Senior Product Designer · Carbon contributor

Team

Federated across 200+ product teams

Duration

Ongoing over three years

Platforms

Design system · Web components · Figma libraries

IBM · Carbon — Design system governance at scale

Problem

A design system is only as good as its adoption ritual.

Carbon was mature — thousands of components, dozens of tokens, accessibility built in. What was missing was a governance model that let product teams contribute upstream without breaking downstream consumers.

Teams were forking components, drifting quietly, then rediscovering the fork three quarters later during an accessibility audit.

Process

Less about pixels, more about the meta-work around them.

  1. 01 · Contribution paths

    Mapped the three ways a team touched Carbon — consuming, extending, contributing — and designed a distinct ritual for each.

  2. 02 · Review cadence

    Biweekly pattern review with a rotating panel. I helped set the rubric: does it solve a real, repeatable problem? Is the API narrow? Does it meet WCAG 2.1 AA?

  3. 03 · A11y guardrails

    Wrote the accessibility annotation template that shipped with every new pattern proposal — required before code review.

  4. 04 · Docs as onboarding

    Rewrote the 'contributing' documentation as a step-by-step, so a new team could ship a pattern in a week instead of a quarter.

Results

Fewer forks. More upstream contributions. Faster shipping.

−41%

component forks per quarter

upstream contributions

AA

accessibility baseline held

Component forking dropped meaningfully after the governance model landed, and upstream contributions tripled in the following year. The larger win was cultural — pattern review became something teams looked forward to, not something they dreaded.

Next case study

Anomaly detection & root cause

IBM · AIOps

Read case