Over the years, I’ve had the opportunity to create, establish, and maintain a couple of design systems of web and mobile apps.
Some but not all, design systems I've built for:
• HomeVisit (eCommerce web app for real estate marketing)
• Capture (Mobile app for documenting property damage)
• Drop (Mobile app for earning rewards when shopping)
• Carbon Neutral Club (Web app for calculating & offset carbon emissions)
• Sensibil (Online receipts app)
• Thriver (Web app for selling workplace culture)
• Sherpa (eVisa seller and travel restrictions leader)
Most startups/companies begin without a design system, which makes sense, since the output of a design solution or build is the main priority. However, as the team grows, the need for it becomes more evident, as more questions are involved and people are creating inconsistent components, settling for short term solutions over long term ones.
It inevitably makes everyone slower and it's not until a company recognizes the larger picture of how to scale teams and components better, they finally see the need for a design system. In the long run, it saves time, ensures a better workflow, and outputs a higher quality of work.
Why are design systems important?
A good design system saves everyone time, which = saving money & increasing efficiency.
• Designers can create faster and more consistently
• Developers have better documentation to look towards with less questions
• QA developers can reference and link artboards to bugs
• Product managers can envision solutions themselves through component puzzle pieces
Some documentation types(but not all) that I love writing about:
• Atomic design structures
• Component states & types
• Designer & engineer notes
• Interaction rules
• Responsive rules
• Application rules
• UX flows & artboard organization
• Component localization and multiple languages
• Figma variables, variants, components, properties
• Light & dark mode
• Spec sheets with all design tokens
Over the years, I've been coming up with more and more workshops to teach others how to create efficient design systems and how to prioritize certain components over others and it's a constant learning experience that I love.
A design system is never complete and is always an ongoing process of maintaining and adding new components. The industry is also constantly changing rules, accessibility standards, design program capabilities and more, so it’s our duty as designers to not be rigid in one way of creating a design system but to evolve with it.