Scaling Design System Contributions at Amazon Ads
I created a community contribution system for Amazon Ads' Storm design system, enabling designers across dozens of teams to share complex components and patterns that couldn't exist in Storm's core library. This system provided a structured pathway for experimental and backend dependent components. Increased component adoption by 328% — from a baseline of 704 weekly inserts to 2,314 by January 2026.
My Role & Approach
Key contributions
Created contribution framework with another designer, establishing clear pathways for community components
Designed contribution workflow from submission through potential graduation to Storm core
Built tracking system using Asana connected to submission forms
Developed communications strategy for launch and ongoing education
Established support infrastructure with office hours, crit sessions, and dedicated Slack channel
The Challenge
Amazon Ads' Storm design system served as the foundation for a $56 billion platform, but teams frequently needed complex components that required backend integration or user-specific data, which couldn't exist in Storm's core library. Without a structured way to share these patterns, teams were reinventing solutions that had already been built elsewhere.
Storm Core maintained high standards—production-ready components with no backend dependencies. But teams needed:
Complex patterns requiring backend integration or user data
Experimental components like AI interfaces that weren’t as yet represented in code
Shared solutions to avoid duplicate work across teams
Clear distinction between core Storm and community contributions
My Approach
Working with another designer, I:
Co-created the framework distinguishing Storm Core from Community Library
Designed the contribution workflow from submission to publication
Built tracking infrastructure connecting forms to project management
Developed communications for launch and ongoing engagement
Established support systems to enable contributor success
Community Library System
Positioning the Community Library
I worked with stakeholders to define the role of the community library within the broader Storm ecosystem:
Community Library documentation in Figma explaining positioning is distinct from Storm Core
Storm Core
Production-ready components
No backend dependencies
Fully documented and maintained by Storm team
Available in Storm UI repository
Contribution Workflow Design
I created a flowchart articulating the end-to-end contribution process, making it clear and accessible for designers across dozens of teams. The workflow established:
Submission Phase
Clear criteria for what qualifies as a community library component
Guidance distinguishing between components suited for Storm core vs. community library
Standardized submission form (connected to Asana) capturing component details, complexity, and dependencies
Required documentation standards
Review Phase
Governance structure for evaluating submissions
Quality standards balancing accessibility with consistency
Assessment of backend/data dependencies
Feedback mechanism for contributors
Publication Phase
Process for adding approved components to the community library
Documentation requirements for published components, including dependency notes
Version control and maintenance expectations
Community Library
Complex patterns requiring backend/user data
Experimental components (e.g., AI interfaces)
Incubator for potential Storm Core candidates
Maintained by contributing teams with Storm guidance
This distinction set clear expectations and helped teams understand when to contribute to the community library.
Communications & Change Management
To drive awareness and adoption of the new community library system, I developed communications materials, including:
Announcement strategy introducing the system to designers across Amazon Ads
Educational content explaining when and how to use the community library vs. Storm core
Usage guidance clarifying the distinction between simple components (Storm) and complex patterns (community library)
These communications were designed to shift designer behavior from building in isolation to contributing to and leveraging shared resources, particularly for complex patterns.
Supporting Contributors
To enable designer success and foster a contributing culture, I established comprehensive support infrastructure:
Office Hours:
Twice-weekly sessions where designers could get guidance
Support for technical questions, contribution process, design review
Lowered barrier to entry for first-time contributors
Weekly Design System Crit:
Open sign-up session for any designer working on Storm-related components
Provided feedback before formal submission
Helped refine components and catch issues early
Built community and shared learning across teams
Dedicated Design System Slack Channel:
Real-time support for design system queries
The community could help each other
Shared examples and best practices
Announced new community library additions
These support mechanisms directly contributed to the system's adoption by making contributions feel accessible rather than daunting.
Tracking Infrastructure
To enable data-driven decisions about component promotion and measure success against our goals, I created:
Asana Board:
Tracking system for all component submissions
Workflow stages from submission through publication
Assignment and ownership clarity
Historical record of contributions
Tagging for component types (complex/data-dependent, experimental, potential Storm candidates)
Connected Form:
Standardized intake reducing friction for contributors
Automatic Asana task creation
Captured essential information: component description, use case, team/product, backend/data dependencies, documentation
This infrastructure was designed to provide visibility into contribution patterns and usage data, enabling evidence-based decisions about which components merited Storm integration or continued investment.
Impact
The goal was to create a structured contribution system that would reduce duplication, improve discoverability of complex patterns, and drive measurable adoption across Amazon Ads teams.
Targets set at launch (first 90 days)
Library growth: 6 to 12 components
Component usage: 704 to 808 average weekly insertions (15% increase)
Storm satisfaction survey score: 79% to 82%
Actual results (4 months post-launch)
Library growth: 6 to 22 components — 267% of goal
Component usage: 704 to 2,314 average weekly insertions — 328% increase, 21x target
27 Figma teams actively using the library
Engagement sustained through Q4 holidays, indicating genuine utility rather than novelty adoption
Strategic outcomes
Scaled design system governance beyond the central team to a distributed contribution model
Created a structured solution for complex patterns that Storm core couldn't address
Established a clear pipeline for promoting successful community patterns to Storm core
Provided an interim home for experimental components like AI patterns during development
Balanced quality control with broad participation, maintaining Storm's standards while lowering the barrier to contribution