Oi • 2018 • Foundational

Problem

Inconsistent experience across web pages and app, engineering and design overhead, and unscalable process.

Solution

Advocate for the construction of a Design System and a team dedicate to it.

Impact

'Public' components library and guide adoption by all squads.

Intro


The project had its first steps with the arising possibility of hiring a new CMS (Content Management System) that would allow for speed in development but it would require a library of components. Soon there were talks about standardization and how to guarantee the migration of hundreds of pages to a new system.

It took a while for the project to be called or understood as a design system per se. After all, the concept was still relatively new at the time.

The first challenge was trying to define a strategy for the project's acceptance and adherence in the company since the business team, stakeholders and even some designers didn't fully comprehend the benefits of such initiative. So our first mission was raising awareness over the importance and the possible benefits: qualitative, quantitative and financial, of implementing a design system.

We checked all the boxes for implementing it: with teams focused on the maintenance of the pages and apps, answering to top-down demands whilst designing components from scratch, there was not enough resources left for scaling products, testing solutions and improving the user experience. But overcoming the stakeholders perceived priorities was our first hurdle and it represented the first moment of focus from our team.

Below you can check how we planned to segment our efforts, iterating throughout the process.

https://s3-us-west-2.amazonaws.com/secure.notion-static.com/bf0ab76f-819e-4936-ae89-252fdc79958d/Untitled.png

https://s3-us-west-2.amazonaws.com/secure.notion-static.com/78b61dc2-307b-47f6-9077-20549e21f28b/Untitled.png

Designing the process itself


So we developed our own work model, contemplating how the design system team would integrate with the squads and 'spread the word'. In this model, the design system team would be responsible for hosting a forum every sprint in order to collect inputs from volunteer ambassadors from each tribe. In return, the design system team would give back patterns and guides to be tested by the squads. This was essential to promote adherence across the teams and allow everyone to build the system together.