The story of a hard call: retire a working design system and build one made for the AI era.
When I joined MongoDB I inherited the team behind LeafyGreen, the company's design system. It had served MongoDB well for years. But I spent my first months asking one question in every room: is this working for you? The honest answers told a harder story. Product teams were running major versions behind, because small upgrades had a way of breaking things nobody could predict. Some teams were already drifting away from the system entirely, and drift only compounds. On the old foundations, a single new component could take six months to ship. And AI native product work was arriving fast, with an appetite for new patterns that math could not survive. The risk was not the cost of changing course. The risk was standing still.
First meaningful fixes in about six months
Every new need adds more patchwork
Adoption keeps eroding
About two years, with a much larger team
Likely outdated on arrival at AI pace
React Aria foundations, basics in about six months
Trust rebuilt through delivery
I chose the third path and took the numbers to my leadership. The objection that mattered most came from engineering directors, because a new system meant migration work their teams had no room for. So I offered a different deal: my team would do the migrations for them. Objections turned into invitations, and we ended up inside their codebases, implementing best practices as we went.
Via shipped its core component library in five months, built on React Aria and designed AI native from the start. We released an early canary ahead of public preview so teams could build with it during the company's internal innovation week. Adoption began before we ever asked for it. The first production team was already building with the canary before we knew they were there, and their questions kept getting more specific until it was obvious. That is my favorite kind of signal: nobody announced anything, they just started using it.
A design system can enforce consistency. I want Via to carry judgment. Quality is being built into the pipeline layer by layer. Deterministic checks live in Via today, catching accessibility, responsiveness, and pattern issues at the source, and the set keeps growing as new checks earn their way in. A layer of AI reviewers comes next, encoding the recurring lessons of design critique into checks that run while work is generated. And human critique feeds all of it: the weekly crits where taste is set are what the system learns from.
Quality runs at creation time, not in review queues.
The build decision was mine, carried to leadership with the evidence behind it. So is the direction. I set the north star and the short term roadmap that walks toward it. And underneath all of it, AI is moving fast. Part of the job is making sure Via moves with it, never locked into last year's assumptions. I lead the organization that designs and engineers Via, spanning design systems, design technology, and research operations.
My team of designers and engineers builds and runs Via: every component, pattern, and quality check in it. Partner teams own the product surfaces Via serves.
Migration is underway across product teams, with my team doing the lifting we promised. But my favorite signal is the work we did not do: teams migrating themselves, and new products being built on Via without our help. A design system succeeds when it stops needing its makers in the room.
The north star is bigger than migration. Via should let anyone at MongoDB build an experience that looks right, works well, and feels like one product, whether or not a designer is in the room that day. The judgment lives in the system because designers put it there, in the weekly critiques where taste is set. And that is the point: encode what we already know, so the team's time goes to the new, the ambiguous, and the hard.