Enterprise apps constantly pressure designers to “just make a new component” when something doesn’t fit perfectly. My job isn’t to say yes to every request—it’s to maintain a system that stays coherent, predictable, and scalable as the product grows. This means knowing exactly when to reuse an existing pattern, when to slightly extend it, and when building something new is actually the right long-term move.
I start with a simple rule: new UI is the last resort. Most enterprise bloat comes from building components that solve problems a system already solves somewhere else. I always look at the core building blocks first—form fields, tables, cards, alerts, navigation structures, and layout primitives. If the request maps cleanly to an existing pattern with minimal adjustment, I reuse it. This keeps the UI consistent and protects dev teams from inheriting unnecessary maintenance.
When a screen needs something that almost fits a component, I check whether an extension will break the logic that already exists. Extending a button variant or adding a table toolbar action is usually harmless. Extending something like a list-view structure with nonstandard spacing, nesting, or interaction patterns is usually a sign the real issue is upstream in the workflow. I fix the workflow before I touch the component library.
There are rare times when inventing something new is the right call. It happens when a workflow introduces a distinctly different interaction model, or when the existing system simply doesn’t support the complexity required. Even then, I design the new element so it follows the system’s visual language—tokens, spacing, states, motion, iconography—so it doesn’t feel bolted on. And if the new pattern works well, I document it thoroughly and add it to the library so other teams don’t reinvent it later.
This balance is core to hybrid UI + design-systems work. It protects the system, accelerates delivery, and keeps the product free of one-offs and slow, brittle UI. My approach strengthens design system cohesion, reduces redundant component creation, and speeds up delivery cycles across enterprise products. By distinguishing between when to reuse patterns and when to design new ones, I maintain scalable, predictable interfaces that minimize maintenance debt and improve system adoption across teams. Knowing when to reuse and when to create is one of the most important skills I bring to enterprise and legacy-modernization work.
✢✢✢✢✢✢✢✢✢✢✢✢✢✢✢✢✢✢✢✢✢✢✢✢✢✢✢✢✢✢
IC UI Designer • Design Systems Contributor • Figma Libraries, Telerik/Kendo UI, Tokens, Component Libraries
