Since Design Systems have been discussed more recently, I thought I would share my experience as a newbie Design System Engineer (DSE).
Before I switched from front-end engineer to dedicated DSE, my understanding of DSEs was a variation of Front End Engineers living in an earlier product development phase and working more with designers. I thought I could adapt quickly because I've worked as a front-end engineer for a few years and made a small React component library, have a design background (I majored in Graphic Design in college), and have had plenty of experience working with UI and UX designers in the previous jobs.
However, I started running into different problems and challenges once I started working on the design systems.
Here are a few examples I learned on the job:
-
Build tool configuration
- Frameworks like CRA and Nextjs are fantastic tools and abstract away many headaches that come with the build tools. But DSEs need to know what's happening under the hood so they know how your product (design systems) is built.
-
Helping consumers of the design systems
- The developers and designers are encouraged to use the design systems to build their products. And often, they have questions and problems with the components. How you solve these problems for them determines your design system's success because, ultimately, the design system needs to be adopted by the teams to build the products. Providing good support for consumers requires good communication skills, and knowing when and how to push back becomes a critical skill.
-
Accessibility knowledge
- It's not that I didn't take a11y seriously before, but for DSEs, it is one of the most critical aspects of your work. If the component meets the a11y standard, the final product will likely have a good a11y.
-
Takes much longer to release
- Throughout my career as a developer, I was always in a startup environment, so my mindset was "ship often, fix as the bug comes." But this only applies to some design systems because of the impact those bugs can make on the products. Thorough and rigorous planning to create a solid foundation so that the product can build on top of it.
-
Every design system is different
- Just because you work on a design system doesn't mean you can copy everything from Material Design. Each design system has its requirement, and the "success" of the design system varies too. Knowing what success means to your system is key to creating a successful design system.
I really enjoy working on design systems as I get to play with code and design (Figma), and debugging aspect of work is very satisfying. Dedicated design system engineers are still a rare kind of engineers, but I'm excited to pursue this career as the design system will become even more important for the tech companies that want to scale:)
I'll be writing about more technical aspects of design system engineering. Please follow and support if you liked what you just read!
Top comments (0)