Virtual Therapeutics

Building Infrastructure That Scales: Design System for Healthcare Tools

⏵ Consolidated fragmented styles to improve usability and increase user trust

⏵ Made it quicker to iterate on designs by creating reusable components in Sketch

⏵ Implemented code component library with developer to ensure parity between design and code

Role

Design systems, usability

Collaborators

Lead frontend developer, head of engineering

Timeline

2021 – 2022

Virtual Therapeutics

Building Infrastructure That Scales: Design System for Healthcare Tools

⏵ Consolidated fragmented styles to improve usability and increase user trust

⏵ Made it quicker to iterate on designs by creating reusable components in Sketch

⏵ Implemented code component library with developer to ensure parity between design and code

Role

Design systems, usability

Collaborators

Lead frontend developer, head of engineering

Timeline

2021 – 2022

Context

Virtual Therapeutics was preparing to launch patient-facing products but had internal tools with fragmented visuals which would erode trust with users

When I joined Virtual Therapeutics as the first and solo UX designer, they had several internal tools for patient management, headset tracking, program monitoring. These were developed in a piecemeal way with no designer involvement.

Even a small change meant updating the same element multiple times across each page and each tool. This made it difficult to improve existing tools.

In addition to this, the roadmap had new tools that would be patient-facing. Having a consistent design language would build trust with patients and allow fast scaling as more users signed up.

4

internal tools updated

Context

Virtual Therapeutics was preparing to launch patient-facing products but had internal tools with fragmented visuals which would erode trust with users

Some examples of the components I built and documented, following a developer-friendly structure.

The evolution from the screenshot on the left to the screenshot on the right took several incremental changes over years.

UI Audit

Auditing our existing UI elements revealed that engineers were unnecessarily coding the same thing over and over, while users were struggling to understand where to click

I built my case to the head of engineering by first doing a UI audit. I combed through 4 different internal tools and put together a presentation that showed the different versions of each UI element.

This made it clear to leadership that a design system was needed and well worth the initial resource investment. I emphasized that an incremental approach was possible and better than not having a design system at all. Engineers were wasting time writing code for a component that had already been implemented.

256

color styles consolidated

UI Audit

Auditing our existing UI elements revealed that engineers were unnecessarily coding the same thing over and over, while users were struggling to understand where to click

Prioritization

With the constant need for new features, developers didn’t have the bandwidth to optimize old code. The trade-off I presented was to build out one or two of the most impactful components at a time.

Developers were on board with this idea and had wanted one for a long time. However, shipping new features had always been prioritized.

Prioritization

With the constant need for new features, developers didn’t have the bandwidth to optimize old code. The trade-off I presented was to build out one or two of the most impactful components at a time.

The trade-off with this approach was short-term consistency, but it created an opportunity to demonstrate the value of design systems and get buy-in from everyone across the company.

After listing out all components we currently used, I cross-referenced it with our roadmap to capture any brand new components that were incoming.

First I prioritized the low-hanging fruit like UI elements that appeared very frequently, multiple times on a single page, like buttons and form inputs.

Next were the strategic priorities. For example, we were starting to build dashboards. This was a great opportunity to pull chart components up into the MVP, so that those components were standardized from the get-go, and wouldn’t need to be revisited later.

Expandable table row from IBM's Carbon Design System

Expandable table row for VT's Design System

I also looked at other companies’ design systems that had products similar to ours. This provided a lot of insight about best practices and current trends. It also ensured we didn’t miss any important components.

Designing for Engineers

To ensure that engineers would actually use the design system, I worked closely with the lead frontend developer to learn their existing tools and workflows like Bootstrap.js

I learned that the engineering team uses Bootstrap.js, so I studied the documentation, taking note of naming differences (tooltip vs. popover, stroke vs. border, fill vs. bg) and structural conventions (primary vs. secondary button is controlled by the class attribute in CSS, compared to a symbol override in Sketch).

Using terms and attributes that engineers were familiar with would remove friction and make it more likely that they would use the component. They wouldn’t have to go and look it up in the documentation.

Designing for Engineers

To ensure that engineers would actually use the design system, I worked closely with the lead frontend developer to learn their existing tools and workflows like Bootstrap.js

Modular Design

Building components in a modular way allowed one component to be flexible and serve multiple use cases

I defined the architecture of the design system so that just one component was versatile enough to be used in multiple ways.

A straightforward example of this is buttons. Rather than having separate components for a text-only button, an icon-only button and a text-and-icon button, I built these as attributes of a button (icon=true/false, label=true/false).

This allowed us to get much more bang-for-our-buck in terms of code. It’s much easier to get one component approved and built rather than 3 different ones.

This also prevented the previous problem of fragmentation from occurring again by making components easier to maintain.

Modular Design

Building components in a modular way allowed one component to be flexible and serve multiple use cases

Implementation

I built the components in Sketch so that they resembled actual code components as closely as possible, to make translation from design to code easier

Building the components in Sketch and observing the engineering team code them revealed some fundamental differences between design tools and code tools.

It was a rewarding challenge to maintain parity between the two libraries while adapting to each tool’s strengths.

I also maintained an open dialog with the engineering team as they built the components to ensure parity.

Implementation

I built the components in Sketch so that they resembled actual code components as closely as possible, to make translation from design to code easier

Documentation

Robust documentation usage guidelines and context-based examples helped ensure adherence

Even though I wanted to remove friction for engineers by removing the need for documentation, I still documented the design system for company-wide visibility and so we had a single source-of-truth.

I included usage guidelines for each component so that engineers could quickly choose the right component without waiting for me to get back to them.

I also created some wireframes that showed components being used in context, not just in isolation.

Documentation

Robust documentation usage guidelines and context-based examples helped ensure adherence

Outcomes

Engineers are now actually excited to ship new features and work on frontend improvements

While it was hard to measure exact time saved, there were several intangible impacts of implementing a design system.

⏵ Prototyping and iteration was easier and quicker

⏵ 4 internal tools were retrofitted with the new design system within 6 months

⏵ Engineers were more willing to make changes

⏵ New external products appeared more professional and gained user trust due to visual consistency

17

relieved engineers

Outcomes

Engineers are now actually excited to ship new features and work on frontend improvements

While it was hard to measure exact time saved, there were several intangible impacts of implementing a design system.

⏵ Prototyping and iteration was easier and quicker

⏵ 4 internal tools were retrofitted with the new design system within 6 months

⏵ Engineers were more willing to make changes

⏵ New external products appeared more professional and gained user trust due to visual consistency

Challenge

Accepting that perfect is the enemy of good was crucial to start making incremental improvements

At a startup with limited bandwidth, building a design system had always been deprioritized. As a designer, my instinct was to overhaul everything and make everything perfect from scratch.

The resource constraints forced me to reframe my thinking and look for the smallest changes that would make the biggest impact.

This shift also helped me get the head of engineering on board. Turns out, even the engineers had been putting off building a component library because it seemed like an overwhelming and daunting task.

Challenge

Accepting that perfect is the enemy of good was crucial to start making incremental improvements

At a startup with limited bandwidth, building a design system had always been deprioritized. As a designer, my instinct was to overhaul everything and make everything perfect from scratch.

The resource constraints forced me to reframe my thinking and look for the smallest changes that would make the biggest impact.

This shift also helped me get the head of engineering on board. Turns out, even the engineers had been putting off building a component library because it seemed like an overwhelming and daunting task.

Psst…my portfolio is way cooler when viewed on desktop. Case studies on mobile are shortened.

Psst…my portfolio is way cooler when viewed on desktop. Case studies on mobile are shortened.

  • Seattle

    Open to full-time roles

    8+ years of experience

    VR, Health & Finance

    Enterprise & B2B

Let’s connect!

If you’re curious about how we can work together, please reach out and let's set up a chat!

2026 ❖ Built in Framer

  • Seattle

    Open to full-time roles

    8+ years of experience

    VR, Health & Finance

    Enterprise & B2B

Let’s connect!

If you’re curious about how we can work together, please reach out and let's set up a chat!

2026 ❖ Built in Framer