What building a design system taught me about design
I spent the past year helping build one design system for three products and two very different audiences.

I expected most of the work to be about colors, components, and documentation. It became a project about decisions: which ones should be shared, where they should live, and how many the system actually needed.
These are the lessons I would carry into the next design system from the beginning.
1. Share the structure, change the personality
Our first instinct was to give each product its own visual language. That meant separate palettes, separate references, and much more maintenance.
The approach did not scale.
What worked was one shared structure with a single accent color changing between products. Typography, spacing, and components stayed consistent. The accent gave each product its own character without forcing the underlying system to split.
Personality is relatively easy to change. Structure is expensive. Share the expensive part.

2. Your version of black is a design decision
Early screens used true black text on white. They were readable but felt generic.
Replacing black with a deep navy changed the temperature of the entire product. It was a small token change repeated across every screen, which made it more influential than many larger visual gestures.
The strongest design decisions are often the quiet ones applied thousands of times.
3. Design the language before the buttons
The products began to feel like one family because of the language as much as the components.
We agreed on what to call things, how labels should be written, and which words did not belong in the product. That vocabulary resolved discussions that visual exploration alone could not.
When a team cannot agree on how something should look, agreeing on what it means can make the visual decision much easier.
4. Plan for the assets you cannot ship
Our brand typeface was licensed in a way that prevented us from using it on the web.
Rather than ignoring the limitation, we selected an open alternative with similar proportions and documented the substitution as part of the system.
A known constraint can become a specification. An undocumented constraint returns later as a bug.
5. Restraint gives the remaining details more weight
During the process, we removed bounce animations, backdrop blurs, and many of the gradients we initially liked.
What remained was more deliberate: short transitions, a clear press state, and gradients reserved for moments that genuinely needed more visual impact.
Every removed effect made the remaining ones easier to notice.
A design system is not a collection of everything the product is allowed to do. It also records what the team has consciously decided not to do.

What I would change if I started again
I would spend more time defining tokens and vocabulary before drawing complete screens.
Screens make progress visible, so they are tempting to start with. But the decisions underneath them determine how quickly everything else can move.
The system is still evolving, as it should. The difference is that products now ship faster, discussions are shorter, and new designers have a clearer place to begin.
That is the part of design systems that is difficult to show on a moodboard, but it is where much of their value lives.


