Design Systems aren’t a Design Team responsibility

As an engineer, at some point in your career, you’ll face the moment to implement a new Design System. I’m so lucky that in 4 years as iOS Engineer I implemented 3 new design systems in different companies.
No matter the size of the organization, errors were always the same.
Here are 3 things (I think) your company should avoid when working on a new design system.

No Engineer involved

From an engineer point of view, it all starts with an invite to your team for a meeting called “Design Presentation”. In that meeting, the Design Team of your company (usually they are designers that aren’t part of your team) tells you it’s time for a brand refresh, a new modern way to present your product to customers, a unified design language across all platforms that will allow the company to move faster in the future, …

It all makes sense, to have a successful product you need a consistent experience across different platforms. The problem is how to achieve this in an efficient way for the company.

That meeting is the first time engineers see the new design which is usually presented with some nice and cool sketches of your main features.

When it’s time to implement this new design system in your team’s features, engineers usually come up with these questions: “How should I show the error in this text field? How will this screen look like on the iPad? There’s a network request that may take a while, do we have a loading state for this button? What if the user uses a bigger font? Is this design accessible?”

This is what happens when you don’t include engineers on early stages of your creative process.

“The best single source for innovation is your engineers”.

Marty Cagan (former SVP Product, eBay)

Engineers know details of your product better than everyone because they were the ones who implemented them. As designers, you can leverage their knowledge about edge cases; this will help you to have a complete design system that covers all scenarios.

Another good reason to include engineers in your creative process is that they will be the ones who will implement your work. Let them fall in love with your designs, let them embrace the idea of this redesign so they can help you to let your sketches become reality with all details you put in.
This fusion of a creative mindset with an analytic mindset will help the company to have an amazing and feasible design system.

No Product Manager involved

When the company decides it is time for a new design refresh, the final result is usually very different from what the product looks like.
When it’s time to implement, every feature team receives the specific design for its features, but the one who isn’t very convinced at first is the product manager. They usually come up with these questions: “Have this design been tested with users? Will it have a negative impact on conversions? Are we sure in this way we aren’t impacting negatively on KPIs?”

I remember one time where the product manager asked me to do an A/B testing to test the new color palette on the entire app. My response to this was: “That sounds crazy. I can do that, but if we see the new color palette has a negative impact on KPIs, what should we do? The rest of the company is already working on this new design.”

That’s what happens when product managers aren’t part of your creative process. They are the one that needs to be convinced first by your redesign work. They can help designers with some guidelines of what is each team’s KPIs, what part of the product is riskier to change and it needs to be tested carefully before selling to the rest of the company that the redesign is ready to be implemented.
It is product managers’s job to give you boundaries to engineers to drive their problem-solving skills in the right direction for the product. They can do that even for designers.

No Rollout Plan

Once you have a new design system ready to be implemented, shipping it in production isn’t an easy and pain-free task.
There are 2 (reasonable) ways to do this: implement the design overall the product and go in production once you finished or do a gradual design change step by step.
The first solution allows you to have the new design in production quicker but if you don’t test your designers’ work first, you got in trouble as Snapchat did.
The second solution it’s safer, but it will require much more time to get to the final design in production and in the meanwhile you’ll need a sort of “map” between the current and the final one.

What you don’t want in your product is to have the login page with the new design system in production, but the signup page is still using the old one. You can’t use one design language on a page and a different one in another, they will look two different products and users will get confused.
Those rollout details are important for the success of your redesign work and need to be defined at the beginning of the process.
Design Teams can’t just start drawing new components without having an idea of what’s the plan to ship them in production.

Design Systems are a Team responsibility

Creating a new design system isn’t your Design Team’s responsibility. Don’t let them close in a room for some months and then came up with an eye-catchy but unfeasible result.
The secret receipt for a great design system is to let Engineer, Product and Design work together from day one.