Have you noticed that design systems work is really…slow? Sometimes it feels like it takes forever to get even the smallest component done. And it doesn’t help when you compare yourself to your teammates on product teams, who seem to be shipping a new feature every week.
Platform work is always slower than product work because building a generic solution is more challenging than building a specific solution.
When you’re building a one-off Button for a single codebase, you might not worry too much about making sure the component is flexible enough to support multiple use cases.
Building a Button for your design system’s component library requires a lot more thought.
You have to propose a coherent interface.
You must handle multiple interaction states (hover, disabled, loading).
It has to be theme-able so that it can be used across multiple brands.
Plus, you need to make sure the component is accessible, well-tested, and has documentation.
If you want to get more comfortable with the slower speed of design systems work, consider shifting your mindset.
Before, you were expected to:
Build many specific, low to medium-quality features
Ship fast and break things
Evaluate your team’s success on speed to market
Now, you’re expected to:
Build a few, generic, high-quality things
Focus on testing and stability
Evaluate your team’s success based on adoption
P.S. — Have you had trouble making this mindset shift? Reply to this email and let me know!
If you liked this post, please consider sharing it!