Why a design system?

Building an Enterprise Design System, Part 1

Matt Felten
Dec 5, 2018 · 5 min read

This is part of a series on the journey ServiceTitan took establishing their design system Anvil.
Part 1:
Why a design system?
Part 2:
Design System Infrastructure

Design systems are so hot right now. It’s hard to throw a rock and not find a Medium post or tweet on Design Twitter about design systems. I’ve spent the last six months at my role at ServiceTitan creating a design system for the company. I want to start this multi-part article specifically covering why we made a company initiative to form Anvil, the design system powering the huge enterprise app that we at ServiceTitan are working on.

Design Systems Are Abstract

Another reason that question is asked so much is that design systems are still abstract. Every company at every size has different challenges to solve and requirements to get there. Design systems are built to solve specific pain-points of the company. There’s no off-the-shelf solution (yet?) that will solve those needs without trying to solve other issues as well.

I’ve worked on three design systems at this point in my career and they were all drastically different in scope. I’ll be focusing on the problems we’re solving at ServiceTitan but I guarantee every company has experienced similar issues or will.

Explosive Growth

Scaling that fast is incredibly exciting. It’s also really hard. When you’re in a small team or a solo designer at a startup, you can basically keep everything in your head. You know the app inside and out. Design patterns start and end with you and your three Sketch files.

When you hit around the 5 designer mark, one of the biggest things that breaks down is the communication of existing and new design ideas. This is no fault of anyone, it’s just incredibly hard to keep track of what everyone is doing, and make sure information is surfaced in a timely manner.

Everyone is trying to get work done and ship useful experiences to customers. It’s easy for cross-application consistency to fall by the wayside.

“When can we update our legacy pages?”

If you’ve never done an Interface Inventory, do it. It’s an enlightening process. Make it public. Do a presentation to the company about it. Show everyone that 43 button styles not only create a sense of disorder for the users, but it’s a time intensive process to figure out which button style should be used.

It can be much easier creating New_Button_final_v3 rather than trying to figure out what the most appropriate style is. It looks really good though. Let’s talk to the PM and engineer to use this new style across our app. Oh, it’s going to take days to get it rolled out and is out of scope for this project. Let’s just use it now and add a ticket to the backlog to convert the rest of the app.

Congratulations, you now have 44 button styles!

This is of no fault to anyone. I’ve done this myself. When an app gets larger and communication becomes more difficult, unless there’s a strategic effort to combat against this design debt, it’s going to happen.

Enable other work to be built

It’s the problem of having to craft a tree and also build the forest at the same time.

If we have a dedicated person or team who is responsible for this high level view, it will allow other designers and engineers to focus more on creating the right experiences for our customers.

Anvils On The Horizon

  • Communication breakdown as teams grow
  • Inconsistent and expanding design patterns
  • Design & engineering efficiencies

We kicked off an initiative to build our design system, Anvil, starting with a team of two. We’ve been working on it for about 6 months, and at the time of writing we have our branding patterns which include color palette, headline styles, typographic scale, and more, as well as over 20 components that our design and engineering teams are using to create and ship new experiences to customers.

We’ve grown the team to four, including a project manager, and since we’ve started seeing the impact across our Product org, planning to add more people to the team next year to continue this momentum.

In the next article, I’ll talk through our foundational strategy and how we got to where we are today.

I’m always thinking about hard and nebulous issues design teams are facing like design systems, scaling teams, and processes. If you are too, let’s chat on Twitter!

ServiceTitan Design

Insights and opinions from ServiceTitan’s design and…

Medium is an open platform where 170 million readers come to find insightful and dynamic thinking. Here, expert and undiscovered voices alike dive into the heart of any topic and bring new ideas to the surface. Learn more

Follow the writers, publications, and topics that matter to you, and you’ll see them on your homepage and in your inbox. Explore

If you have a story to tell, knowledge to share, or a perspective to offer — welcome home. It’s easy and free to post your thinking on any topic. Write on Medium

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store