about

Work

artefacts

about

Work

artefacts

INITIALISE

The mission

Take 2 internal products – one a user facing mobile webapp – the other being an admin tool. Both running on proietary components which didn't really foster consistency. Change the business needs to enable 3rd parties to create integrations into the mobile webapp. Add a fully native mobile app into the mix. There you go.... How do you solve the challenge of having tons of products created by totally different teams – which all needed a consistent look and feel?

The answer was rather easy. Treat it like a product!

The team

Moritz (Tech Lead), Daniel (Frontend Engineer), Davy (Full Stack Engineer), Jan (Frontend Engineer), Miriam (UX Designer)

The timeline

Time to initial release – 3 Months

My role

I was responsible for driving the project, designing components, keeping requirements and processes in sync, aligning all potential stakeholders, driving adoption and making sure engineering and design are continuously aligned.

INITIALISE

The mission

Take 2 internal products – one a user facing mobile webapp – the other being an admin tool. Both running on proietary components which didn't really foster consistency. Change the business needs to enable 3rd parties to create integrations into the mobile webapp. Add a fully native mobile app into the mix. There you go.... How do you solve the challenge of having tons of products created by totally different teams – which all needed a consistent look and feel?

The answer was rather easy. Treat it like a product!

The team

Moritz (Tech Lead), Daniel (Frontend Engineer), Davy (Full Stack Engineer), Jan (Frontend Engineer), Miriam (UX Designer)

The timeline

Time to initial release – 3 Months

My role

I was responsible for driving the project, designing components, keeping requirements and processes in sync, aligning all potential stakeholders, driving adoption and making sure engineering and design are continuously aligned.

INITIALISE

The mission

Take 2 internal products – one a user facing mobile webapp – the other being an admin tool. Both running on proietary components which didn't really foster consistency. Change the business needs to enable 3rd parties to create integrations into the mobile webapp. Add a fully native mobile app into the mix. There you go.... How do you solve the challenge of having tons of products created by totally different teams – which all needed a consistent look and feel?

The answer was rather easy. Treat it like a product!

The team

Moritz (Tech Lead), Daniel (Frontend Engineer), Davy (Full Stack Engineer), Jan (Frontend Engineer), Miriam (UX Designer)

The timeline

Time to initial release – 3 Months

My role

I was responsible for driving the project, designing components, keeping requirements and processes in sync, aligning all potential stakeholders, driving adoption and making sure engineering and design are continuously aligned.

Identify

The audience

First things first.... We started identifying our target audience. Since we're dealing with UX, UI and a shippable product as the ultimate outcome – this was pretty straight forward:


Frontend Engineers
Internal teams
External developers
We'll have to build for a diverse set of external frontend engineers all with a different engineering background
Product designers
Internal
External teams
We'll have to potentially also cater for external design teams – depending on the partner we're collaborating with

Identify

The audience

First things first.... We started identifying our target audience. Since we're dealing with UX, UI and a shippable product as the ultimate outcome – this was pretty straight forward:


Frontend Engineers
Internal teams
External developers
We'll have to build for a diverse set of external frontend engineers all with a different engineering background
Product designers
Internal
External teams
We'll have to potentially also cater for external design teams – depending on the partner we're collaborating with

Identify

The audience

First things first.... We started identifying our target audience. Since we're dealing with UX, UI and a shippable product as the ultimate outcome – this was pretty straight forward:


Frontend Engineers
Internal teams
External developers
We'll have to build for a diverse set of external frontend engineers all with a different engineering background
Product designers
Internal
External teams
We'll have to potentially also cater for external design teams – depending on the partner we're collaborating with

Double diamond

Identify the needs

Multiple surveys across internal engineers and designers gave us a first idea of what we need to take care of while building. In a second round of interviews with 10 external partners we identified even more requirements which were also quite surprising.

A component library is definetly not enough. We need to go way further!

60% didn't think they could adopt it. Further research made it very clear why. People feared bad documentation, little to no samples and a bad developer experience as their main arguments.

A second idea sparkled to make sure adoption is great: We need to communicate progress and advocate pro-actively about the work we do.

Double diamond

Identify the needs

Multiple surveys across internal engineers and designers gave us a first idea of what we need to take care of while building. In a second round of interviews with 10 external partners we identified even more requirements which were also quite surprising.

A component library is definetly not enough. We need to go way further!

60% didn't think they could adopt it. Further research made it very clear why. People feared bad documentation, little to no samples and a bad developer experience as their main arguments.

A second idea sparkled to make sure adoption is great: We need to communicate progress and advocate pro-actively about the work we do.

Double diamond

Identify the needs

Multiple surveys across internal engineers and designers gave us a first idea of what we need to take care of while building. In a second round of interviews with 10 external partners we identified even more requirements which were also quite surprising.

A component library is definetly not enough. We need to go way further!

60% didn't think they could adopt it. Further research made it very clear why. People feared bad documentation, little to no samples and a bad developer experience as their main arguments.

A second idea sparkled to make sure adoption is great: We need to communicate progress and advocate pro-actively about the work we do.

Validate

Craft & Test

To make sure we had the "right" approach we agreed to not validate our process but to rather really test it out with a real component and learn from those findings. The test included a fully fledged Button component, a press release with pictures and a tiny campaign around it which was sent to our initially interviewed people with a survey attached. The answers were pretty overwhelming. 90% of our users would adopt the system. There were 2 answers which helped us a little bit. One stated they “don’t want to use new tech…” and the second asked for “more full-page samples with this component” — which proved that we had to include this in our solution. A great learning because we thought that those samples would be “the last thing to add”.


One stated they “don’t want to use new tech…” and the second asked for “more full-page samples with this component” — which proved that we had to include this in our solution.

A great learning because we thought that those samples would be “the last thing to add”.

Validate

Craft & Test

To make sure we had the "right" approach we agreed to not validate our process but to rather really test it out with a real component and learn from those findings. The test included a fully fledged Button component, a press release with pictures and a tiny campaign around it which was sent to our initially interviewed people with a survey attached. The answers were pretty overwhelming. 90% of our users would adopt the system. There were 2 answers which helped us a little bit. One stated they “don’t want to use new tech…” and the second asked for “more full-page samples with this component” — which proved that we had to include this in our solution. A great learning because we thought that those samples would be “the last thing to add”.


One stated they “don’t want to use new tech…” and the second asked for “more full-page samples with this component” — which proved that we had to include this in our solution.

A great learning because we thought that those samples would be “the last thing to add”.

Validate

Craft & Test

To make sure we had the "right" approach we agreed to not validate our process but to rather really test it out with a real component and learn from those findings.

The answers were pretty overwhelming. 90% of our users would adopt the system.

One stated they “don’t want to use new tech…” and the second asked for “more full-page samples with this component” — which proved that we had to include this in our solution.

A great learning because we thought that those samples would be “the last thing to add”.

Continous development

Iterate & Shape

Going component by component we developed a pretty decent flow and ended up with a mix of the composition approach from Chakra UI, the API from Material UI and the documentation detail approach from the Apple Human Interface Guidelines. Visual regression tests helped us spot differences and make sure our engineering <> design files are always in sync.

Our release strategy was born and refined:

Component proposal and collaboration + ideation across different user needs

Presentation in our bi-weekly meetings to gather feedback and have the possibility to iterat

Full-fledged design in Figma with all states

Component creation in code

Documentation with best practises, samples, do’s and dont’s

Release notes and press releases — internal and external — around the updates

Feedback consolidation over time via GitHub and Figma

Continous development

Iterate & Shape

Going component by component we developed a pretty decent flow and ended up with a mix of the composition approach from Chakra UI, the API from Material UI and the documentation detail approach from the Apple Human Interface Guidelines. Visual regression tests helped us spot differences and make sure our engineering <> design files are always in sync.

Our release strategy was born and refined:

Component proposal and collaboration + ideation across different user needs

Presentation in our bi-weekly meetings to gather feedback and have the possibility to iterat

Full-fledged design in Figma with all states

Component creation in code

Documentation with best practises, samples, do’s and dont’s

Release notes and press releases — internal and external — around the updates

Feedback consolidation over time via GitHub and Figma

Continous development

Iterate & Shape

Going component by component we developed a pretty decent flow and ended up with a mix of the composition approach from Chakra UI, the API from Material UI and the documentation detail approach from the Apple Human Interface Guidelines. Visual regression tests helped us spot differences and make sure our engineering <> design files are always in sync.

Our release strategy was born and refined:

Component proposal and collaboration + ideation across different user needs

Presentation in our bi-weekly meetings to gather feedback and have the possibility to iterat

Full-fledged design in Figma with all states

Component creation in code

Documentation with best practises, samples, do’s and dont’s

Release notes and press releases — internal and external — around the updates

Feedback consolidation over time via GitHub and Figma

Release & Ship

Create, Document & Communicate

This was the most fun part. It took us over 3 months to have all our components initially abstracted and another 12 months to have them implemented in our actual products and across our design files.

Wait... we did really made it on time? Not really... we were 4 weeks due – but the open communication and inclusive environment enabled us to deliver the best possible quality.

Why did this work out so fast?

We were surprised by the speed of adoption and the eagerness of other teams to contribute and participate. We were overwhelmed of the enthusiasm we generated.

Release & Ship

Create, Document & Communicate

This was the most fun part. It took us over 3 months to have all our components initially abstracted and another 12 months to have them implemented in our actual products and across our design files.

Wait... we did really made it on time? Not really... we were 4 weeks due – but the open communication and inclusive environment enabled us to deliver the best possible quality.

Why did this work out so fast? We were surprised by the speed of adoption and the eagerness of other teams to contribute and participate. We were overwhelmed of the enthusiasm we generated.

Release & Ship

Create, Document & Communicate

This was the most fun part. It took us over 3 months to have all our components initially abstracted and another 12 months to have them implemented in our actual products and across our design files.

Wait... we did really made it on time? Not really... we were 4 weeks due – but the open communication and inclusive environment enabled us to deliver the best possible quality.

Why did this work out so fast?

We were surprised by the speed of adoption and the eagerness of other teams to contribute and participate. We were overwhelmed of the enthusiasm we generated.

You said...

Communicate?

This might have been the hardest part of the whole project. But it was well worth it.

Collaboration and building a community turned out to be THE key factor for our mission.

You said...

Communicate?

This might have been the hardest part of the whole project. But it was well worth it.

Collaboration and building a community turned out to be THE key factor for our mission.

Our component creation and release flow included the creation of documentation, samples and full layout usage. We learned over time that people really love to have guidance on “how far” they could stretch the design system or not.

To keep feedback loops short and feasible we did setup beta tracks of the design system so we could publish beta components while gathering insights early on in the process without investing too many resources in “creating the wrong thing”

You said...

Communicate?

This might have been the hardest part of the whole project. But it was well worth it.

Collaboration and building a community turned out to be THE key factor for our mission.

Our component creation and release flow included the creation of documentation, samples and full layout usage. We learned over time that people really love to have guidance on “how far” they could stretch the design system or not.

To keep feedback loops short and feasible we did setup beta tracks of the design system so we could publish beta components while gathering insights early on in the process without investing too many resources in “creating the wrong thing”

The outcome and...

The Impact

We sadly didn't come up with the metrics before we started the project... But you always keep learning – right?


We were able to update 5 products in 1 year to use the design system — which translates to a 100% adoption!

We enabled over 40 external developers to create apps we could integrate in our ecosystem based on our design system

Our products fell way more consistent and had a cohesive approach to our design language and UX

Our efforts speeded up ideation and mock creation by 30%

Our efforts speeded implementation time up by 50%

We were finally able to run visual regression tests which help us identify implications of changes

The outcome and...

The Impact

We sadly didn't come up with the metrics before we started the project... But you always keep learning – right?


We were able to update 5 products in 1 year to use the design system — which translates to a 100% adoption!

We enabled over 40 external developers to create apps we could integrate in our ecosystem based on our design system

Our products fell way more consistent and had a cohesive approach to our design language and UX

Our efforts speeded up ideation and mock creation by 30%

Our efforts speeded implementation time up by 50%

We were finally able to run visual regression tests which help us identify implications of changes

The outcome and...

The Impact

We sadly didn't come up with the metrics before we started the project... But you always keep learning – right?


We were able to update 5 products in 1 year to use the design system — which translates to a 100% adoption!

We enabled over 40 external developers to create apps we could integrate in our ecosystem based on our design system

Our products fell way more consistent and had a cohesive approach to our design language and UX

Our efforts speeded up ideation and mock creation by 30%

Our efforts speeded implementation time up by 50%

We were finally able to run visual regression tests which help us identify implications of changes

And most important

The Learnings

I've never learned so much about design systems as in this project.


We completely under-estimated the required effort of maintaining and evolving a design system

Keeping Code and Design 100% in sync is extremely hard

The value of having a design system was acknowledged and a new team with 100% dedicated members was born

You should treat a Design System just like you would treat one of your products and it’s lifecycle — but actually you should treat it even better!
Michael

And most important

The Learnings

I've never learned so much about design systems as in this project.


We completely under-estimated the required effort of maintaining and evolving a design system

Keeping Code and Design 100% in sync is extremely hard

The value of having a design system was acknowledged and a new team with 100% dedicated members was born

You should treat a Design System just like you would treat one of your products and it’s lifecycle — but actually you should treat it even better!
Michael

And most important

The Learnings

I've never learned so much about design systems as in this project.


We completely under-estimated the required effort of maintaining and evolving a design system

Keeping Code and Design 100% in sync is extremely hard

The value of having a design system was acknowledged and a new team with 100% dedicated members was born

You should treat a Design System just like you would treat one of your products and it’s lifecycle — but actually you should treat it even better!
Michael

Home

About me

Case Studies

Public artefacts

Home

About me

Case Studies

Public artefacts

Home

About me

Case Studies

Public artefacts