Background

My goal was to redesign the design system to improve consistency, scalability, and efficiency across 6+ products. By aligning the design system and process with IBMs Carbon Design System, I aimed to create a cohesive user experience while streamlining the design and development process.

Problem

The product suite doubled from 3 to 6 in under a year, and is expected to continue to grow. Before the redesign, the products looked and behaved differently, there was no cohesive user experience, and the brand identity felt fragmented. Additionally, the language used throughout the UI was extremely inconsistent: buttons with the same function used different labels across products, which confused users and disrupted workflows.

Internally, it wasnt much better. Designers and developers lacked clear guidelines for using components, which meant teams often interpreted things differently or just built their own solutions from scratch.

How can we create a scalable design system that unifies multiple products while remaining flexible to each teams unique needs?

Goals

1

Ensure all components look and behave consistently across all products

2

Standardise action verbs in the UI to eliminate confusion

3

Provide clear usage rules for every component so teams can implement them consistently

Process

Audit & Research

Product UI audit

Internal interviews (designers, PMs, engineers)

Usability testing

Structure & Standardization

Structure & Standardization

Action verb standardization & UX glossary

Design & Validation

Component creation

Implementation guidelines & contextual rules

Collaboration & Iteration

Cross-functional reviews

Accessibility checks & compliance validation

Continous iteration

Rethinking the Architecture

The first attempt was an atomic design approach, breaking components into atoms, molecules, and organisms. It was theoretically sound, but in practice, it slowed down design and made elements hard to locate. We pivoted to a component-based structure, giving each component a dedicated page in Figma.

Each page contained a clear purpose, all interaction states, and builder versions for easy copy-paste into real products. For example, our table component included pre-configured rows, headers, and cells that could be reused and adapted across products.

I explored several design systems and quickly realised that IBMs Carbon Design System offered the best inspiration. Its accessibility standards, structured documentation, and scalable components provided a benchmark, but I needed to adapt it for BlueCats unique ecosystem. Accessibility was a priority from day one: colour contrast, keyboard navigation, and screen-reader support were all integrated into the component design.

Establishing Consistency

Colour tokens replaced generic labels like blue-10 with semantic names such as button-primary. This allowed global teams to work in sync and maintain a recognisable brand identity, even across newly acquired products.

Colour tokens for different links

Colour token

Role

Value

$link-primary

Used for primary text links

Blue 60 #0f62fe

$link-primary-hover

The hover colour for $link-primary

Blue 70 #0043ce

$link-secondary

Secondary text link for lower contrast backgrounds

Blue 70 #0043ce

$link-inverse

Link on $background-inverse backgrounds

Blue 40 #78a9ff

$link-inverse-hover

Hover colour for text links on $background-inverse backgrounds

Blue 30 #a6c8ff

We standardised action verbs like Apply vs Save and created a glossary with contextual examples. Every guideline aimed to reduce ambiguity and improve UX coherence.

Glossary for Action Words

Action

When to use

Example

Add

Inserting an item into an existing system

Add Item, Add Member, Add Document

Apply

Confirming and implementing settings or changes immediately

Apply Changes, Apply Filters, Apply Settings

Cancel

Discarding changes without applying them

Cancel Edit, Cancel Changes

Confirm

Acknowledging or approving an action, often irreversible

Confirm Changes, Confirm Action

Create

To build or generate something new entirely from scratch

Create Document, Create Account, Create Task

Delete

Permanently removing something from existence

Delete Document, Delete Account, Delete Task

Disable

To turn off or deactivate a feature or setting

Disable Account, Disable Schedule

Dismiss

To close or remove an element (notification, modal, message) without taking further action

Dismiss Notification, Dismiss Modal, Dismiss Alert

Download

Transferring data from a remote server to a user's local device

Download File, Download Report

Edit

Action to modify specific details of content

Edit Profile, Edit Comment, Edit Settings

Design

Each component page in the system was designed to be self-explanatory and reusable. Every page included a brief description of its purpose, all interaction variants, and examples of real-world usage. This approach ensured that designers and developers could quickly understand how to implement components consistently across products without needing additional guidance.

By documenting components this way, we made it easier to maintain visual and functional consistency, reduce errors, and speed up design and development workflows. The system supports flexibility, so each component can adapt to different product needs while staying aligned with the overall design language.

Results

The redesign of BlueCats design system delivered a clear, measurable impact across both users and internal teams. Components across six products are now visually and functionally consistent, reducing confusion and streamlining workflows. Standardised action verbs and a shared UX glossary improved language coherence, making interfaces easier to navigate.

For the team, handoff friction dropped dramatically: developers now have clear documentation for every component and state, reducing implementation errors and speeding up project timelines. Onboarding time for new designers decreased, as the system provides a single source of truth for patterns, components, and guidelines.

Usability testing showed immediate improvements: users could complete tasks like batch actions in tables faster and with fewer errors, reflecting the practical benefits of consistent components and predictable interaction patterns.

Finally, the system is scalable and flexible, supporting the integration of newly acquired products without disrupting established workflows or brand identity. It serves as a living system that evolves with user feedback, company growth, and accessibility standards.

6+ products unified

Successfully implemented across six products with a framework for scaling to additional products.

Reduced hand-off issues

Clear component definitions and guidelines significantly reduced questions and errors.

Faster decision-making

Streamlined design decisions for everyone by defining clear guidelines

Takeaways

In the end, I built a scalable, flexible design system that unified BlueCats product suite while still respecting the unique needs of each product.

The Design System now has consistent UI behaviour, language, and component usage across six products, helping users navigate seamlessly, no matter which product theyre in.

For the team, this meant fewer handoff issues and far fewer questions from developers. Components are clearly defined, states are documented, and expectations are aligned.

Design decisions are faster too, because were no longer reinventing the wheel.

And this isn't over. The system continues to evolve with regular feedback, keeping it aligned with user needs and design best practices.