I created a design system to support the efficient modernization of 70+ enterprise applications.
The design system was intentionally built to support the unique business needs of each application while maintaining a consistent user experience across the broader enterprise suite, enabling product teams to modernize mission critical systems more efficiently while maintaining consistency, compliance, and long-term scalability.
Scope
150+ enterprise applications assessed
Impact Area
70+ applications scheduled for modernization
Timeline
4 month discovery + phased delivery
Background
The Forest Service operates a large, complex ecosystem of enterprise applications supporting Forest Service operations. Many of these systems had not been modernized in decades, resulting in overlapping functionality, rising maintenance costs, accessibility risk, and inconsistent user experiences.
Our team set out to not only replace aging applications, but to rethink how technology could better support the Forest Service mission.
My work focused on creating the UX foundation needed to enable that transformation at scale.
Discovery
Transformative change driven by research
Before designing solutions, the team conducted a four-month discovery effort to understand the ecosystem holistically.
What we learned
Why a Design System Was Necessary
With 70+ applications slated for modernization, consistency could not be enforced one application at a time.
The design system became the mechanism to:
- Reduce redundant design and engineering work
- Establish a shared UX and implementation language
- Embed accessibility at the system level
- Enable faster, more predictable delivery across teams
Process
1. Plan & Organize
To support 70+ applications under one brand, I designed a scalable system using consistent, token-driven foundations, eliminating the need for app-specific themes:
- Established design system architecture
- The intent is that designers will pull the foundational design system files into local libraries to build app-specific designs while maintaining shared standards
- Established guiding principles used for both design and development decisions:
- Flexibility – support diverse business needs
- Accessibility – WCAG compliance by default
- Simple – enable faster design and development through reuse
- Agreed on a collaborative approach built alongside developers
2. Assess UI Patterns
Using findings from our team's earlier discovery work, I translated the main use cases our tool needed to support into the UI elements required to achieve them — buttons, tables, input fields, cards, and more. I then audited tools like Salesforce and Jira to understand what patterns users would already expect to see. Our product wasn't just a CRM tool or a project management tool, but a combination that had to meet the needs of over 70+ enterprise applications.
With a working list of UI elements, I facilitated sessions with clients, system architects, and developers to assess each one on two dimensions: how necessary it was for users and how difficult it would be to implement. Plotting these on a grid gave us a clear MVP of UI elements and a prioritized backlog to build from.
We also had to develop this component library alongside our first modernization effort, a grants management application, so real requirements informed every decision as we went.
3. Establish Foundations
Key activities
- Established the visual language:
- Typography scales
- Color palettes with accessible contrast
- Iconography standards
- Spacing and layout rules


4. Build Library
Key activities
- Designed components in parallel with engineering
- Tested components for accessibility
- Refined components based on implementation feedback


5. Establish Governance
Key activities
- Established a centralized ownership model with a dedicated design team
- Communicated how teams could access and use the system
- Collected feedback from real usage
- Prioritized updates and improvements as adoption grew
Design System in Action
The Forest Service's Grants & Agreements application was the first to modernize and put our system to the test.

Next Steps
Set up metrics to track design system success
We defined and tracked adoption, component usage, and consistency metrics across applications to measure impact and identify gaps.
Scale design system as more apps are modernized
We audited new application needs and systematically added reusable components and patterns to support expanding use cases.
Iterate on existing components as needs change
We incorporated feedback from managers, field crews, and partners to refine components and improve usability and data capture.
