Enterprise UX: The State of the Industry in 2017 and 2018 [Infographic]

We are in the midst of an enterprise UX renaissance.

Startups like Gusto, Stripe, and Slack are setting the expectation that business products should be useful, usable, and satisfying. Meanwhile, large organizations like IBM, GE, and Salesforce are prioritizing design as a competitive advantage by hiring thousands of designers.

What challenges do dodesigners face when designing B2B products? What processes rule the day? And how much do they earn? We’ve captured key insights in the infographic below.

For more in-depth insights, download the 41-page Enterprise UX Industry Report for 2017-18.

UX industry report

1. UX design is still new to B2B companies

At companies with more than 500 employees, 35% of respondents reported that a full-time UX design role has existed in their company for less than three years. Across companies of all sizes, 53% of respondents reported that UX has existed for less than three years.

This shows us that UX design is still a new discipline to over ⅓ of established companies.

2. Design consistency is the top challenge

Design doesn’t scale like engineering.

As teams grow, design processes eventually break. Unless a standard set of tools and guidelines are in place, every new designer may introduce new inconsistencies to the product – slight changes in color, typefaces, or design patterns altogether.

Add in the complexity of B2B organizations, and it’s no surprise that 59% of all respondents reported that maintaining design consistency is their biggest challenge.

To eliminate inconsistency and improve scalability, many companies are turning to design systems as a long-term solution. Popularized by enterprises like Salesforce, Microsoft, Intuit, and others, a design system prescribes standards for product development and all the design and code components required:

  • Guidelines – The design principles, code conventions, and editorial guidelines
  • Visual assets – Color palettes, typographic scales, grid definitions, icons, etc.
  • UI patterns – The design and code for repeating patterns in a product (e.g. page layouts, forms, buttons, etc)
  • Governance and maintenance – Who can contribute changes to the design system and how changes get approved

3. Executive buy-in for design is more difficult in larger B2B organizations

A clear correlation exists between company size and degree of executive buy-in. In companies with 1 to 25 employees, 27% reported that executive buy-in is a challenge. At companies with 1000+ employees, that number nearly doubles to 48%.

4. Most B2B organizations follow agile processes

It is encouraging, however, that the old waterfall style of product development is fading away. Instead of defining all the requirements upfront and completing the work in phases, more teams are now following an agile process where requirements are regularly revisited, work is done in smaller iterations in “sprints”, and the output of each sprint is tested with end-users.

5. Design systems are the key to scaling UX

The iterative nature of agile development, however, requires new types of tools for designers and developers. To keep up with the fast pace, teams need tools that can help them collaborate and deliver consistent work.

Since design consistency is the top challenge, it makes sense that 69% of respondents said their companies either have a design system or are building one.

6. Self-education popular amongst B2B designers

Over 65% of respondents report learning design skills on their own. This percentage represents the number of people with no formal design education, and those with formal education who continue learning on their own.

The high rate of self-education could be due to the limited amount of formal UX programs. According to UX Mastery, only 132 universities around the world offer a 4-year degree related to UX.

7. Design income and career prospects are promising in the B2B world

Despite the challenges, the future looks bright for designers in the B2B world.

Income dramatically increases onceyou have three to five years of experience – At this level, three times more respondents earn greater than $100,001 per year in the U.S. compared to those with one to three years of experience.

Promising long-term career income – After 10 years of experience, 82% of respondents report yearly earnings of at least $150,001 in the U.S.

Conclusion

With UX spreading across the enterprise industry, more teams experience the growing pains of scaling design culture and processes.

  • Design consistency, usability testing, and clear requirements remain pressing issues with majority of respondents.
  • Designers per developer decreases as company size increases.
  • Over half of respondents indicated that a full-time UX role was just introduced in the past three years.

Product teams, however, are quickly adapting to enterprise sprawl with more collaborative processes and toolkits. Nearly 70% of respondents report using a design system and over 90% follow some form of an agile process.

Enterprises are finally facing the reality that business users expect the same quality of experience as consumer products. While transformation won’t happen overnight, the future looks promising. As UX continues to evolve as a core business competency, so too will the processes and platforms that support collaborative product development.

For more insights around team structure, income, design leadership, and more, download the free 41-page 2017-2018 Enterprise UX Industry Report.

Join the world's best designers who use UXPin.

Sign up for a free trial.

Introducing the 2017-2018 Enterprise UX Industry Report

Driven by the consumerization of the enterprise, user experience is now a major competitive advantage for B2B products notorious for poor design. While many have reported on the overall role of design, few have investigated the new status quo for the trillion-dollar B2B space.

That’s why we conducted the first ever report into enterprise UX.

Diving deep into the B2B sector, the report uncovers insights from 3100+ product, engineering, and design professionals from around the world.

Respondents reported their background, experience, salaries, team structures, product development processes, design maturity, and more. The new report reveals the trends, challenges, and forecast for freelancers, agencies, and teams of all sizes who create B2B products.

Key insights

The key findings of the 41-page report are:

1. UX is still new to B2B companies: Only 26% of respondents report that a full-time UX role has existed for more than 5 years.

2. Design consistency is the greatest challenge

  • Improving UX consistency (59%)
  • Testing designs with end-users (53%)
  • Clarifying requirements (46%)
  • Collaborating between teams (44%)

3. Agile rules the day: 93% of respondents report they follow either an Agile or “Agile-fall” product development process.

4. Salaries and earning potential are strong: In the U.S., 72% of all enterprise designers earn at least $75,000 per year.

Diving Into the Data: Why Enterprise UX Is So Hard

Think about all the frustrating products you’ve used at work. Expense reporting apps. Outdated CRM systems. Database management tools. In the world of B2B products, UX has historically been an afterthought.

That’s because it’s not easy to overcome years of engineering-driven culture, legacy technology, and complex bureaucracy.

In the 2017-2018 Enterprise UX Industry Report, we gathered insights from 3,157 designers, developers, and product managers in the B2B world. In this post, we’ll dive into just a slice of the data.

The top challenges in enterprise UX included:

1. Improving UX consistency (59%)

2. Testing designs with end-users (53%)

3. Clarifying requirements (46%)

4. Collaborating between teams (44%)

 

Challanges in UX process survey

Legacy technology issues increase with company size

61% of respondents in companies with 5001 or more employees report legacy technology as a UX challenge.

Meanwhile, only 33% of respondents in companies with 26 to 100 employees reported the same challenge.

Legacy technology issues

UX consistency is a universal challenge

The data indicates that improving design consistency becomes a significant challenge once a company grows beyond 25 employees.

The results aren’t surprising since poor product consistency is a byproduct of poor communication and collaboration (both of which become increasingly difficult with distance).

Collaborating between teams

Executive buy-in becomes more difficult as company size increases

Almost half of all respondents from companies with 5001 or more employees reported that executive buy-in and understanding of UX is a challenge.

Improving UX consistency

Collaboration becomes more difficult as developers outnumber designers

The data showed that larger companies tend to be distributed and hire more developers per designer.

As designers support more developers across locations, collaboration certainly becomes a greater challenge.

Collaboration in UX endavours

Want to know more about the current state of enterprise UX? Check out the 2017-2018 Enterprise UX Industry Report for all the details.

Design Systems Insights from Forum One: Courtney Clark & Amy Vainieri

Based in Virginia, Forum One is a digital design agency specializing in public sector projects.

We sat down with Courtney Clark (Managing Director of UX) and Amy Vainieri (Senior Designer) to learn more about their “design systems first” approach to tackling large redesign projects. Watch the full video or read the transcript below!

To know more about the benefits and processes of design systems, download the free e-book Why Build a Design System?

Jerry: It’d be great to start and get an idea from both of you of how you ended up working on design systems at Forum One. And I guess we could start with Courtney, and then we’ll move to Amy.

Courtney: Great. Hi, I’m Courtney Clark. I’m the managing director of user experience at Forum One. And this all started a couple years ago when we were starting on the Peace Corps project. Peace Corps had gone through a rebranding but needed to extend their new brand online. So, as we were starting the project, Amy was actually the one who was like, “I think we need a design system.”

Amy: I’m Amy Vainieri, the senior designer at Taoti Creative. Courtney and I used to work together at Forum One, where we worked on the Peace Corps project. It was a matter of looking at the scope and breadth of the Peace Corps project, which is just enormous. Knowing that we’re really passionate about the site, and knowing that we wanted to get the best site possible. And the only way to do that was to use a design system to build the pages because there were so many different kinds of pages that we wanted to make for them. So that’s really where it came from. We just started working together at the wireframe stage and then at the design stage to come up with reusable components that we kind of building throughout the whole site. So that kind of happened by accident, but it turned out to be a really good thing.

Jerry: And how long did that whole process take for you guys to build out the design system for the Peace Corps project?

Courtney: The project total was about eight or nine months long, so we had to be … That was the other thing, is we knew that we had to be very efficient with our time because we had a very hard launch date. They were celebrating a … Now I’m forgetting. Anniversary. I think it was a 50th anniversary, so we needed to be really efficient with our time.

So, at the beginning, after discovery, we really dug into layouts and the design system. And then, Amy do you remember how much time we spent on that?

Amy: Yeah, it was probably about … It was either mid to late January through the end of March, so is that like eight to nine weeks, total.

Jerry: For that project in particular, what would you say were some of the challenges you faced along the way as you built out that design system?

Amy: Well, I think that the part that was kind of just an accident, neither of us or anybody on the project had ever used a design system before. So learning how that works and learning the benefits, there was a little bit of growing pain, so we’d have to go back and redesign something because we hadn’t accommodated for it, or something like that. So that was the main challenge and just the breadth of the project. It was really big.

Courtney: Yeah. I think what we had going for us is that historically our front end developers have used a tool called Pattern Lab, which allows them to start front end development before the back end is built. So they have already when we’re reviewing work, they already are thinking in a system mindset before we get started, so it was really natural that we were front loading that even more, structuring it. But there was … I think one of the challenges was we need to start with a bang with the design and get people to fall in love with it, and people don’t necessarily fall in love with basics, or just the single elements. So Amy worked really rapidly to show a full page design, and the whole time we’re planning backwards a little and saying, “Okay, but what are these pieces? How will they be reused? How can we fit the together in different ways on other pages?”

So it was very rapid, but it worked out. It worked really well.

Jerry: Yeah, it’s interesting that you mentioned getting people to fall in love with the idea of this reusable design system is a little challenging. Did you find that selling the design to the client was challenging, or were they pretty on board with the idea?

Amy: So they didn’t actually know about it at first. We didn’t specifically … Like I said we didn’t start out with the goal of doing a design system, so it wasn’t something that we kind of took the client along with us as we went until a few weeks into the project maybe, so it was a matter of kind of explaining to them in simple terms like, “You’ve seen this piece before, you saw it on X, Y, Z page, so we’re just reusing it here.” And then eventually they kind of … We introduced them to the system as a whole. We never showed them the system just because it wasn’t really something that they needed to see. But, there wasn’t a lot of selling to it. They really got it right away. They were great clients, and Courtney has fun stories about them.

Courtney: Yeah. I think part of it going into it … So their old site and their brand hadn’t been refreshed in a while and it wasn’t just one site they had many sites that they were managing. So they were really interested in consistency, especially with the rollout of the new logo and the new look and feel to maintain the brand it needed to be consistent across all the properties. And the design system speaks directly to that need, so that worked really well. And I think to Amy’s point we wanted them to fall in love with the initial look and feel so we showed page designs really quickly, and then there was a slow sort of education process about these are the elements we’re going to reuse these and here is the benefit of it.

I use the analogy of Legos a lot of times like we’re going to have these blocks but we can reassemble them in many different ways. But we needed them to see a finished piece before we could start pointing out the different Legos.

Jerry: Right, so it’s interesting that this started as amongst a sort of underground, like internal tool that you guys build outright just to help you guys along the process and then you sort of brought the client into it and explained the benefits of using this. Now at the end of the project did you then hand over this design system to the client as well as just sort of kind of an extra thing that you guys had built, that maybe they could further implement in the future in their organization.

 

Courtney: It’s still alive, we’re still doing work with them. So the first launch is in June 2016, and we continue to work the Peace Corps to refine and build out new pieces they’ve updated same thing. So we’re still partners in managing and updating that design system, and that’s also been a learning experience as well. ‘Cause as new team members come on or leave we do have this central piece that everyone can use the same language around and reuse. But it does lead to some interesting challenges about how it evolves and grows over time to meet new needs. ‘Cause that was a year ago, almost two years ago.

Amy: We did end up giving the system to some third-party vendors. There were a couple pieces of the Peace Corps website that we weren’t going to touch and having that available to kind of give to them. It’s like, this is what you need to use to make your site consistent with the rest of what we’ve been working on, that was really valuable.

Jerry: Gotcha, so it’s interesting then that you have sort of become the stewards of this design system over time. What started as sort of this internal project has since I imagine grown quite a bit in scope and also in just the amount of involvement and also just governance from everybody involved.  Is this design system something the Peace Corp owns and drives along or is it something more that you guys manage and involve them as needed.

Courtney: Well, we’re certainly partners in the work. It’s their website, and we’re helping them maintain it and build it. They do a lot of work on it, of course, so we are very passionate about the organization and the project from the start. Our CEO is a former Peace Corp volunteer, the project manager on the project is a former Peace Corp volunteer, so there’s a lot of passion around it to start with. But we maintain it together ultimately the Peace Corp owns it, it’s their brand, it’s their look and feel, but when it comes to making updates or providing guidance around how we extend it we often suggest the direction hat we want to go in then we have a discussion about it to make sure it makes sense because ultimately it’s theirs.

Jerry: Right. And is there a dedicated team at Forum One that just works on the design system or is it an effort that is sort of spread out across the project. the day to day project team members?

Courtney: Yeah, that’s an interesting question ’cause I was watching the interview you did with, what’s his name from Intuit?

Jerry: Joe Preston, yeah.

Courtney: Yeah, yeah so they have like a team who used that design system, and that’s what they do. Because we’re an agency we have project teams, so we have a user experience person, creative design person, a front-end person, you know the mix of … So whoever is on that project team is a maintainer but also does all the other work related to the project. But there’s not like a dedicated owner or a group of owners that takes care of it and grows and feeds it; it’s the project team who does that.

Jerry: Gotcha, and that sort of make sense in an agency environment right because there are a lot of projects and also clients where it probably makes sense to have some of that responsibility shared between people, and you may not just have the resources necessarily to dedicate to just maintaining that design system like a large organization like Intuit might be able to do.

Courtney: Yeah, that’s right.

Jerry: And I’m curious then since that was a year ago. Since then has building design systems been a core project that you’ll work on with clients at Forum One?

Courtney: Yeah, I can speak to … Amy, did you want to?

Amy: Well yeah, I was just going to say there’s something that … Knowing how well it worked on the Peace Corps and what we learned from that project, it’s definitely something that I try to use in the project since then at Forum One and at Taoiti. It’s just an easier way to build things, in my opinion; it’s a more systematic way of scaling things. So it’s definitely something I’ve used since at both companies.

Courtney: Yeah, and I say that more than anything because of the success and because a lot of … It’s an industry trend right now and for good reason. And so we’ve certainly incorporated it into our processes in other projects. And they all take different forms; not everybody is starting with a fresh new brand or logo. We do work with non-profits and foundations, and a lot of them have some legacy work, but they can update smaller pieces along the way. So the other thing that we’ve been doings is, even more slowly introducing a design system and it has to jive with the legacy look and feel and structure. And then introduce a new look and feel and we’re doing that right now with the MacArthur Foundation, and so that’s like an added layer of challenge to this because you need to have that consistency, but over time it will all switch over.

Jerry: Right and the way that you work with clients is that design system conversation something that you have immediately in the beginning of a project to have them understand that this is a foundational component to whatever work they’re asking for or does that happen as like a one-off conversation.

Amy: I recall a work project that Courtney and I worked on after the Peace Corps project it actually became a really useful tool for starting one of those redesign conversation with a particular client we ended up doing a design audit. Basically took all the different button styles and all the different textiles and showed them what was inconsistent about their site and how we used a design system on other projects to mitigate that. Which that was a really useful tool to start those conversations. They ended up going for it, which was great, but it was a little bit of work to get them to agree, but they went with it.

Courtney: Yeah, and that audit was vital. Amy did the audit and as you can imagine it’s like just a smattering of all the different menus and like she said buttons. And once people see that they start to get it a little bit more they’re like, “Oh yeah, how would somebody know how to move through when things are so inconsistent here.” So the efficiency is another big selling point as well because once the system is created … Actually, on Peace Corps, Amy was able to put together pages in minutes because all the building blocks were there. So once we talk about those pieces and they can see a couple of really beautiful examples. And there are many examples in the product space but seeing them in the non-profit space and the foundation space; people start to get excited about it then.

Jerry: Right, and I think that’s what so interesting about the work that you do with design systems at Forum One is when you look at a lot of the existing design systems, they are for very high-profile enterprises, like IBM, Microsoft just recently released a fluent design system, Sales Force, of course, is known for Lightning. But not a lot of people may know that these non-profit organizations also do have internal design systems as well, and that’s actually really cool that that’s possible with your guys help. And I’m also curious when you work on a design system with different clients is it pretty much a project that Forum One can create all on their own, or does it require a bit collaboration between their developers and their product managers as well?

Courtney: Great question, it varies with every group. ‘Cause we’re often working, sometimes we’re working with their IT departments, sometimes we’re working with marketing or communications. So in order to be good partners you have to be a little bit fluid to figure out who is going to own it and how you can get buy-in when you’re internal within that organization, you can lay that out you sort of know the people to talk to, but we’re often coming and have to figure out that landscape as well. So that’s the first part of our goal is just to figure out the landscape and the stakeholders and who might be interested in it so that it can live on ’cause eventually what we’re creating will launch and we hope to continue working with them but ultimately, like I said we hand it off, and it becomes their design system.

Jerry: When you’re working on a design system with these clients have you found that the technology is a constraint you have to work within or are you open to suggesting changes to, let’s say for instance the CSS framework that they may be using on their backend? Is there some freedom in technology that is provided to the team when you’re working on a design system?

Amy: It kind of depends on the project, both Forum One and Taoiti work primarily with Drupal so there is only so much we can do, but we do our best to work within the constraints of whatever CMS we’re working in. Peace Corps was built on Django. I felt like we had a little bit more freedom with that one than we have with other projects. But that may have just been me being excited about the project. But it really depends on the client in what we’re working with and how we’re building their project.

Courtney: Yeah, I say a really common project for us is a full redesign. Like we can come in and work in a more phased approach, but it’s really common that groups will come to us and say, “We’re ready to overhaul it.” And when that happens we’re not editing existing CSS. We’re upgrading the CMS they’re on anyway, so more often than not we are able to start from scratch which is kind of a blessing. But that is to say; I’m on a project right now where we’re making edits within an existing ecosystem. What that means though is that we just have to be very close with the front end and backend developers so we know how far we can push things. Or where there may be challenges ahead so it takes a really tight project team and a lot of really honest review sessions to make sure that what we’re designing can actually be implemented.

Jerry: Have you found that working or rather creating that design system as a foundation for the project does make it easier to collaborate and communicate between the designers and the developers?

Courtney: Absolutely.

Amy: Yeah, so much we have. The developers on the Peace Corps project, in particular, were just thrilled because they’re already thinking that way. So they’re using Pattern Lab, they think in a systematic way on they’re going to build the cages, so when we started thinking that way it just makes their job 10 times easier. And the fact that all of us were using the same language to describe things made it to easier for project managers and for the sales folks to kind of be on our level and all talk the same language and communicate a lot better. It’s great.

Jerry: And Courtney, I think what’s interesting is you mentioned that a lot of times you will be brought in to work on full redesigns for clients, and it’s actually very interesting that this design systems process has become something that is part of the redesign process. That instead of the alternative method where you just go to a client, and you would just redesign the site and hand it off when you’re done now you’re actually giving them not just the final representation in that site, but also the sort of derivative components that they can then use forever, and they have something powerful that they can evolve and make future redesigns easier as well. That’s actually really cool to see that the conversation starts with the client saying, “Oh I just want my site redesigned.” But it becomes something a lot more meaningful once you get involved and start building that design system as the basis for that project.

Courtney: That’s right, and we talk a lot about how to design stuff that can scale. Because a lot of groups that we work with whether they’re grant making foundations, or they’re non-profits, who are running some real different programs what they’re doing changes year to year. So their digital needs can vary greatly. Part of our UX and design practice is to ensure that we’re creating solutions that can scale up and down and the design system is a key piece of that. The point is that we talk a lot about scaling, design systems work really great for that. And it’s more bang for your buck. Where were already doing that thinking up front then it can live on and it can even extend ideally into not just the website, the social media presence, the marketing materials, a lot of stuff that we’re figuring out can be repurposed elsewhere.

Jerry: Again, what seems so powerful about that is once you have that design system in place Forum One isn’t so much as a vendor at that point as more of like a long term partner because you’ve created … It’s not just a redesign, you’ve created infrastructure for a client and when you have that. That, I imagine, from a business standpoint creates a lot more opportunities for future projects down the line instead of being treated as just this sort of one off agency in the corner that they pass off projects to.

Courtney: Yeah, that’s the goal. We’re in it to be good long term partners and their web presence doesn’t end when the project ends, their digital presence doesn’t end when we launch the website June of 2016. It lives on, and then there is a team who has to maintain it and make sure it’s still functioning properly and meeting the goals of the organization. So yeah, we’re in it to ensure that they have a really solid framework to continue on with.

Jerry: I’m curious for both of you, do you have a background in development? Because as I’ve spoken to a lot of folks who work on design systems, they seem to be the sort of hybrid designer/developer profile, where they kind of live at that intersection and I’m wondering if that is true for both your experiences.

Amy: I think Courtney and I are both … Courtney has a background in graphic design, and I’m starting to explore the UX side of things. So I think we’re both more of the UX/designer hybrid than the development side of course I’m speaking for Courtney, but I think that’s the case with you as well.

Courtney: It’s really interesting that you point that out because where Amy and I are similar is that we are, we’re organizers and what I love about user experience and information architecture is figuring out how to organize large bodies of information, and that takes systemic thinking like a library science person right. And I think that that sort of systems thinking lends itself to design system development as well. But no, no development passion.

Jerry: That’s really interesting, you mentioned that having a sort of information architecture approach to a design system helps designers who don’t have a development background grasps the concepts better and I think that’s a great point because on design systems teams from what I see at least on the pure, in-house corporate side most of the folks here have some sort of development background but it’s great to see that, that doesn’t have to bee the case. You don’t have to be a designer who’s also a developer in order to understand how to create and govern a design system and obviously both of you are proof of that with the multiple projects that you’ve worked on at Forum One.

Courtney: I think thought that you do have to be … When you don’t have that deep development understanding or skillset, you do have to be a really good collaborator, and you have to be willing to work through a solution with your front-end developer or whoever it is that actually will implement your work. And I like to think that Amy and I are pretty good at that, working with our teammates to … Instead of just throwing it over the wall, that we’re reviewing, we’re brainstorming together to ensure … Cause we care, we don’t just design for the sake of design we want our work to actually be implemented, and in order for that to happen, you have to be a good team member and figure it out together.

Amy: And be able to understand what can be done and speak the right language so you guys can collaborate in a useful way.

Jerry: Yeah that’s actually a really interesting point, you mentioned that strong collaboration with the developer can help to overcome some maybe personal understanding of how everything works technically. Is there certain processes that you have found useful at Forum One or even at your current company Amy, for better collaboration between designers and developers?

Amy: It’s just a matter of making time for it. Developers in, I think, every agency I ever worked in the most overworked, overbooked people that exist. So it’s a matter of finding the time and really making a point to meet with your developers and talk to them. ‘Cause so many ideas that have gone into sites that I designed have come from the developers ’cause they want to do cool stuff too. And I think one of the tings that was really successful on the Peace Corps project is that we had a set time every day at noon so we could catch Courtney in L.A., that we would just have an hour open for anybody to join in, we called them Power Jams, just to talk about issues [inaudible 00:26:49] we’d be talking about something and talk to developers and we’d make sure they were invited and attended that day. So having that open space for collaboration on the calendar was invaluable.

Courtney: And we actually … This is our plug for UX pen ’cause we used UX pen to sketch listen, and so those meetings started off with Amy and I sketching, laying out the blocks of the pages, but to Amy’s point the team was invited, they could listen in, they could participate and that sort of transitioned from to UX to design meetings to development meetings to reviews and that was a place because we met every day at the same time, it was a place for the developers to join as they wanted to and also could listen in while they were doing other work for example or once they were deep into the work they knew that they could reach us at that time to answer questions, to troubleshoot, to figure out different solutions if we needed to and I think that was really vital to our success on the project.

Jerry: Yeah it’s interesting of course you guys use UX pen. I would be curious to understand how have you found the platform helpful for you in terms of, not just collaboration, but overall design workflow? Has your process changed in anyway using UX pen as a collaborative design platform?

Courtney: Man, I’m going to have to think back to days of OmniGraffle. Well I mean the biggest difference is that when there are multiple Users, designers on the project we can all get into one project and edit things at the same time and not every tool allows that, so that’s a huge benefit and was vital to this. However, I would love to Amy’s thoughts here because initially once we’re getting … My goal is to do the wireframes to a high enough fidelity that Amy could take it and run with it, and she’s not doing that in UX pen. But Amy what was your experience like?

Amy: I would you echo exactly what you said I think the list of valuable things in UX for me was the ability to watch Courtney and the other UX designers that we had on the project work in real-time so that could watch them work and be able to help them see common things as they were working on it in real-time in the platform we used, really cool.

Jerry: And I see how that all fits together now, because your team has multiple people in different parts of the country and to be able to work on these fairly complex projects especially if they involve something large scale like a design system requires a bit of collaboration and having that almost like common sandbox environment for everybody to come together in, I imagine probably helped to reduce some of the emails and otherwise disjointed conversations that may be happening. So that’s actually really cool to hear. I’m curious since both of you have worked on quite a few design systems projects now, is there a common set of metrics or evaluation criteria that you look at to determine whether a design system you worked on has been successful for the client?

Amy: That’s a really good question, I don’t know that any of the systems I’ve worked on have lived long enough to comment fully on it, but maybe that’s good thing that it hasn’t broken down yet. I imagine that a good metric would be if the client is coming back to you and asking for more things that you didn’t accommodate for, that would certainly be something that I would look for as a missing piece we have may have not quite met the mark in. That’s a really good question though; I don’t know have you seen anything Courtney?

Courtney: Well it’s not necessarily a metric, it’s anecdotal but there have been points on projects where we’ve spent a lot of time crafting the design system, maybe educating the client about what it is and the benefits and we get to review down the line and this really happened where we were like, “Hey, we have designs ready for you to review could you take a look?” And the client said, “Oh yeah if it matches the system we’re totally good to go.” So they mentioned it, they approved it without looking because they bought into the system that we created and it became a little bit more … They knew what to expect, and that was part of their goals. So I think again is anecdotal but that’s like the dream for somebody not to go through thousands of iterations and say like, “I trust it, I know what to expect, the system is great, we’re good to go.”

Jerry: That actually touches on a common theme that in the interviews I’ve done to date so far has been pretty prominent which is just the fact that it’s like a codified standard for design and development best practices so people sort of know this is the source of truth, if it matches what is here then we don’t really have to have all these conversations about, “Does the page look or feel right.” And then on the technical side, some of the in-house teams what they’ve used to measure the success as well is looking at deployment times from when a first iteration of a design has been created versus when it goes live. How much time did it take with the design system in place versus before? And I’m trying to remember who it was, I forget of the people I’ve spoken with so far, but they mentioned that sometimes it can be quite drastic like going from what used to take weeks and now it takes a couple of days because they can, like you said, they can skip all those iterations and all those conversations.

Courtney: Yeah and that’s one of the things when we’re first introducing the concept to folks who haven’t heard of it or worked with it before is talking about the investment because if we’re designing custom things all the way up, the investment just increases it never levels off. But with the design system there’s an initial surge of design activity but then it mellows out a little bit because of the reuse and sort of hitting that magical point where you can start to reuse those elements and yeah you are gaining efficiencies in time and resources.

Amy: I feel like it’s one of those things that you a website is designed really well when you don’t notice how it’s designed, I feel like it’s kind of the same with the design system. You don’t know how well it’s working because you’re probably not hearing a lot of issues it’s just working ’cause it’s magical and wonderful and pages are made really easily. I feel like there is a little bit of a comparison there if it’s working well it’s just a smooth train.

Jerry: Courtney you mentioned, this is interesting, that there is sort of an initial peak of activity in creating the design system where after you get over it that it sort of tapers down a little due to the reuse. In both of your experiences have you found that there is a certain, perhaps company size at which it makes sense to create a design system or do you find that it’s something that could be useful for a company regardless of the size of their team.

Amy: I could see it being useful for a team and being a good tool as well. ‘Cause I worked in-house in a non-profit several years ago and it’s hard to control the brand but if you have a system in place you have certain parameters that you have to stay within it would become a really useful tool for in-house teams to be able to defend their decision and justify their decisions to some internal stakeholders. So from that perspective, I think it would be useful to just about any size company.

Courtney: One of the things that we talk about when we talk design systems is if you’re on a project where there is a lot of hand off between team members or a lot of different folks are jumping in on it, if your site is going to grow or evolve rapidly over time, or if you just have crazy wild styles across all of your visual platforms those are three big indicators that you probably could benefit from a design system. So I don’t know if it has to do with the size of the organization, but maybe the size of the digital presence or how your team works in the handoff between your teams. Certainly, a little baby site that’s just twenty pages, of course, it would design system, but it’s really those products that are thousands of screens or thousands of pages where it’s a no-brainer to utilize a design system from the get go.

Jerry: You mentioned the scale of some of these projects you’ve worked on, what would say is the like the most complex design systems project that both of you have worked on to date? Would it be that Peace Corps project or is there something else since then that has become even more intricate?

Amy: It’s definitely Peace Corps for me, that was certainly the biggest breadth of project I had worked on ever.

Courtney: Yeah, I think one that’s live right now is the Peace Corps. I am working on one right now that will launch later this fall, that is a site that has over a hundred thousand pages, and we’re building a design system for that, but that’s not done yet. So talk to me in November.

Jerry: And for that Peace Corps project, was it difficult to really most just the pure scope of the content, the fact that there were so many pages or was there other process complexities that made it more challenging.

Amy: I think it was a little bit of both just from the pure page perspective that was the most custom design pages that I’ve ever seen designed on a website. We did 29 different templates that we worked with so that as a complexity was just beyond and absolutely benefited from the design system. But it was also being a learning curve as well that makes it kind of special.

Courtney: I would add that the size of the site had a major influence on our process decision but also as I mentioned they had just rebranded and so creating that consistency across platforms they didn’t have was a huge part of the redesign. So a design system helped with that and then third like Amy said a design system starts to put up some gates around like, “This is what we’re going to do.” And when you have a lot of stakeholders, Peace Corps has several programs, they have several stakeholders that were involved, and when you have a lot of people you have to set up some like, “Here’s how we’re going to operate, here’s sort of the bounds of what we’re working within.” And a design system hopefully sets up those bounds to create the consistency.

Jerry: What’s interesting here is also that you mentioned the design system kind of sets boundaries on the scope of the project. Have you found that once you’ve started working on a design system that you’ve had to revisit what it is that you guys are actually going to be doing? So you’d have to go back to the client and tell them, “Oh the scope has sort of changed because as we started working on this, we realized either more or less work needed to be done.”

Amy: I haven’t experienced that yet.

Courtney: Yeah, I haven’t either, and I think it’s because we worked on a really big design system. We’re now talking about how we can have like, what’s the small, medium, and large size of the design system. Not everyone needs what Peace Corps has or what Intuit has or what Microsoft has right; there are smaller groups that need a more basic size. No, I haven’t experienced that yet.

Jerry: Going back to the beginning, I know both of you had mentioned that part of the process for creating the design system was doing an audit first and seeing where all the inconsistencies lay. Perhaps you could just describe your process for creating this design system in some more depth. So the first step would be, of course, doing the audit and then from there what did the process look like for, let’s say that Peace Corps project?

Amy: Well it really started with Courtney, it started with the UX process and thinking about the design from a really high-level and what sorts of components they were going to need to use on the various pages as we filled them out. So the collaboration and the design system definitely started at the wireframing stage when we started reusing stuff within those wire frames. And then it was transferred to me where I built it out piece by piece.

We’ve tried to start with the most complicated pages that had that type of those components in them so that that we could hammer out those big ones first and then they basically just sent in Photoshop files and I was dragging them into new files as I created them into each individual page and then once we were done with the page part of it, I kind of put the whole system together, the whole with all the various elements and components into it and that’s when it got handed off to a developer who essentially put that into a pattern map and built out each one of those elements individually so he could start plugging them in on the code end.

Jerry: So it sounds like part of the process really was getting the design system all set up in place first as part of the redesign project and then once you’ve had those unified design and code components you could then have this toolkit that you could then actually, formally move forward with actual redesign work itself. So you wouldn’t have to be doing so much redundant work later on.

Amy: Exactly and the Peace Corps was a little bit of a special case where it was essentially everything got scrapped. It was built the site from the ground up when we worked on a not as invasive redesign project it’s a little bit more of a balance of what’s existing, what can you find through that audit versus created creating new stuff that may not be necessary at the time. Balancing the existing design with what you would really like to see systematized and brought into the consistency.

Courtney: And the thing, there were a lot of audits going on. We did a huge content inventory and audit, we did a lot of discovery in understanding stakeholders, and our audiences, and our goals for the project. So that’s all background stuff that was happening but it totally influenced the decisions and the approach on the design system itself ’cause you have to know the content before you know the layouts that you’ll need or the elements that you’ll need. So there was a huge amount of effort put into figuring out what this thing was and the content that it would hold before we started being like, “This is what a form field look like.” But there were you know every project I think what we’re seeing and figuring out now are like, “What are the staples that every design system absolutely needs?” And then for each individual project, “What are the custom elements that we need to create or update?”. And there’s even efficiencies once creating design systems becomes part of your process hopefully because you’re seeing the trends in what you’re reusing over and over again from project to project.

Jerry: What’s nice about this process that you’ve described is your kind of front-load all of your buy-in right at the beginning. As you build this design system you already thought of a lot of the difficult problems that could cause you concern later on, like you mentioned getting an idea of how much content there is, which then from that you then know how many patterns or components are required to accommodate that content and you can have those conversations early on and by the time you have this design system built out, hopefully from that point it becomes mostly how do you mix and match those components in a way that satisfies the usability goal for the project.

Courtney: That’s the dream, that’s the dream.

Jerry: Yeah it is. Did you see that it played out close to that in the Peace Corps project or was there sort of some unexpected challenges that came up along the way?

Amy: I think for the most part it was pretty smooth, it was again those growing pains of not having done it before and not knowing where the speed bumps might be. When Courtney and I talked about design systems a couple of times at conferences, and one of the big things is the lessons you learned. There were some big ones like, make sure you understand what the final version of this system is, where the files and things like that. So there were a few bumps along the way, but overall it was a pretty, pretty smooth process.

Courtney: Yeah, and I think the nice thing if you have a design systems team the great thing is that those folks have a committee or they decide is this in or out, do we need to reuse the element or create a brand new one. And when you’re in an agency setting there is not an owner who can say yay or nay it’s a discussion, and usually people are … the discussions are good, but you need to have those guiding questions, you still need to have the rules and guiding questions to help you understand where it flexes and where it grows or where it doesn’t. We were at Triple-Con speaking a month ago, and afterward somebody asked a question about, in higher education when they have a new commencement site, and that’s like every year the team was wanting to redesign it from scratch and the question was, “How do you convince those stakeholders that it’s okay to reuse elements?” So I think that’s another challenge that sometimes teams whether you’re in an agency or in-house there is this desire for something new. So I think there’s really interesting conversations to have around how you guard the system but also where there’s flexibility, so it doesn’t feel stale.

Jerry: And in your work, working on all design systems have you had to hold those conversation with clients? For instance, have they had to come back to you and say, “Oh, it’s been a year? Why don’t we refresh things?” And then you kind of have to remind them that maybe there’s really no business reason for doing that?

Courtney: Yeah, for sure and it’s a discussion right? Because there are some … Like we talk about Lego blocks a lot, there are some sites where their design system is eight Lego block, and somewhere it’s like 40 Lego blocks. And what we’re constantly figuring out is what is the right number of elements or pieces for that group or for that client that will last them the longest. And so that’s … I don’t have a special [inaudible 00:47:18] for figuring out, how many elements you’re going to need, but it’s a discussion that you have to have early. And using examples I found is the best way to say, “How big is this thing and how much shifting is it going to need over time?” And people sort of have to predict but also if they’ve been at the organization for a while the can look back on the past couple of years and be able to say, “Oh yeah, we … ” Some of it’s predictable around what their needs are or what their desires are for the main stakeholders.

Jerry: That’s actually really, that’s really interesting. Because I can see now how in an agency environment like you mentioned those conversations can pop up more often than if you’re in-house and the design system is perhaps given a lot more hands on day to day attention by a full team, so those updates are a lot more visible. Whereas in an agency setting that may not always be the case so people may come back and come up with requests for things just because they don’t see what’s all going on all the time.

That’s the last question that I had here, this has been great learning about both of yours experiences at Forum One and elsewhere as well, and all the design systems work that you’ve done. This is particularly interesting because of the design systems approach that has been used for actual redesigns. This is a very, I think, efficient and just like a really up and coming method for tackling these large projects. It’s always cool to learn about. Thank you both Courtney and Amy for joining us here, I really enjoyed our conversation here.

Amy: Me too, my pleasure.

Courtney: Thanks for having us.

Github’s Design System: Interview with Diana Mounter

Diana Mounter is a Product Designer and Design Systems Lead at Github.

With nearly 15 years of design and development experience, she joined the Github team in late 2015 after being a Sr. Designer at Etsy.

We spoke with Diana on best practices she’s applied and lessons learned from building and maintaining their internal design system.  Watch the full video or read the transcript below!

To know more about the benefits and processes of design systems, download the free e-book Why Build a Design System?

How did you join the Github design systems team?

     Well, when I joined Github, I was actually hired as a product designer to work on their core product things like issues and milestones and stuff like that. So there wasn’t actually a design systems team. I started at a funny time of year just because it was the end of the year. So I had a bit of down time before projects really kicked off. And so I just started to dig around in the CSS and start taking stock of things and asking questions.

So from there I started feeling like we needed to make some improvements to the style guide and Primer was already in existence then but there was a lot of CSS that was not in Primer and styles that were not documented which seemed like a bit of a problem. It seemed like as a new person it was hard to hit the ground running and be able to design in the browser really quickly which is something I had been used to. I helped work on a style guide there and we had a really great setup for proto typing and stuff.

Yeah, so there wasn’t a design systems team and I guess I just sort of started to say that I guess we should have one. And Oscar, the design leads and a couple of other people who were interested in working on this stuff started meeting and talking about some of the problems.

And then it became a more serious thing and it became clear that it was important that we really needed to continue with this work. And it became my full time role after a while because it became too difficult to work on product work and that at the same time.

Was it difficult to get buy in to create a design system?

     I don’t think it was too difficult to get buy in that we needed something because there already was … we weren’t starting from scratch. There was Primer. And also I think it helped that Mark Coudray was the head of design and he felt pretty strapped so he sort of understood those sort of needs. I think what was difficult is to get people on board with restructuring how Primer worked and how that CSS was written and getting designers and engineers to really use the system. So that took a bit of time.

What type of restructuring was needed on your end to accommodate the design system?

     In some ways, yes. And in some ways, no. I guess the main thing was that we had not very flexible styles. One of the first things we did was start to introduce utilities or atomic classes. Because that was something that we could add on top of what was already there without having to refactor every single component in the system. So that gave us some quick wins and allowed us to start introducing actual systems behind the styles like typography scales and experiment and test it out with utilities and start to bring those systems over to our components.

It’s going to take us a long time to get through refactoring all of our CSS. We don’t really have the opportunity to start with a clean slate. So it’s a lot of iterating on what’s already there. And then there’s some things that have been bigger sweeping updates. But a lot of it has been small additions and iteration.

So I think it took a bit of getting used to for people who weren’t really familiar with functional CSS or atomic classes and things like that. Once people started to build out pages with that stuff it kind of clicked and people started to really love that way of working with CSS and started asking for more.

What were some of the issues you wanted to resolve with your design system?

     I think there’s two sides to it for me. One is improving the design to development work flow. So making it easier and faster to design in the browser. Making it easier for people to not have to worry about primitive decisions in design and can spend more time thinking about the bigger user experience problems and product decisions. So that’s definitely a really big part of it is improving that design development workflow.

And then the other side of it is consistency in user experience. So if we don’t build with consistent styles then the user doesn’t see consistent styles. And it’s not just styles it’s also interaction patents and page layouts. So a lot of projects that we do, have that kind of dual benefit of making our style guide easier to work with. And then making the UI easier to use.

Has the design systems team expanded or are you still the sole owner and manager?

     Well there’s two of us on this full time and then we have a group of contributors. So we organized a resource project with core maintainers and contributors are spread across product and creative teams. And so I’m the lead for the designs systems team and one of the designers John Rayhan, he has been working on Primer quite a long time and has also got more of an engineering background and we’re the two that are on this full time. And we’re about to open a position to hire a new designer on the team. So we’re hoping to expand that to three.

What does your design systems maintenance and updating process look like?

     We don’t have anything as formal as a proposal that people have to make. But we do have contribution guidelines for the team. Some things come through and they are smaller requests like, “I keep finding I need this thing and it doesn’t seem to exist.” And so I’ll do a quick review of the code base and see how much we seem to be using that patent and whether it does already exist in a patent or component or a utility or not.

And so it would just be a case of opening and issue and we just try and get to it when we can. We do hold regular prioritization and planning meetings. So that’s usually to look at bigger projects. And to help us get through smaller issues, we have a monthly bug rotation which isn’t really just about killing bugs, it’s about tackling smaller tasks like missing documentation or extending a component style.

And then sometimes product design is part of the work if they’re doing something that is quite a big redesign then there might be a need for a new component. That doesn’t happen too much yet but when that does come up one of the contributors will pair with that person and just walk them through how to construct that component.

That will result in a request and feedback not just from design systems but also from other design teams. Because we are trying not to work in isolation. There’s a lot of moving parts to Github and so getting eyes on this stuff from the product design will help us find out that this is similar to this thing over here and we need to rethink how we styled this.

What challenges have you faced over the years as you’ve built and evolved your design system?

     Many challenges. I think really it is finding ways to inspire and excite the rest of the team to get them on board and to try and explain the why behind what we are doing. And why we are changing how we construct the CSS. That’s something that has been challenging. I think walking into this I was very much thinking about the CSS and the design development work flow and hadn’t really considered how much would be about communication.

So we’ve had to work on a number of things like from how we propose the changes and getting eyes on that from the rest of the team to broadcasting the updates that we’ve made a bit more widely. So we have an internal team blog and we just post stuff on there. Also communicating through the style guide so we make sure that we put clear statuses on everything and link to an issue for feedback and have a change log.

So that communication aspect, we hit a few bumps in the road before we realized how important that was. So that was definitely challenging. The other thing is just balancing doing the maintenance work and the big refactoring work that is a little bit invisible. It’s stuff that’s like is behind the scenes that is not necessarily changing how things look.

And balancing that work and showing that we’re actually doing constructive work with the more innovative and new stuff. The stuff that paves new pathways and introduces new patents or increases workflows. Because they’re very different mindsets and different types of work. And also as we have grown as a team, people know that we exist. More and more teams are using the design systems.

We also get more notifications to review requests or to help people out with stuff or to give feedback on things. So you get a bit of noise from that. And that’s difficult when you’re trying to do a big code refactoring. You need to be focused. We have had to figure out ways to manage that.

We introduced an on call GT system which many of the teams at Github do. It’s called First Responder. And so each week someone’s a First Responder so they can deal with most of that noise and make sure other people get responded to quickly so that people can be focused on more of their project work.

You mentioned that one of the challenges was getting people excited and on board with the design system. What tactics did you find were particularly effective at evangelizing and spreading the methodology?

     I think being really helpful and being very available to start with. Anytime someone was working on something and pinged us or maybe they didn’t ping us be we saw they were working on something, try to say, “Hey, did you know that these patents already exist. You don’t need to write new CSS here. ” And just being very available when people needed help. We needed to win friends to start with. Another thing was trying to get everything documented because we had all of these styles that weren’t in Primer and that had no documentation.

So people aren’t going to use something if they don’t know it exists. We have put a huge amount of effort on trying to get as much stuff documented as possible. Now that the documentation is more thorough and it is more valuable to people they use it more. And then they know that exists.  If it is easier to use than writing in CSS then that’s going to win people over.

And I think the final thing is that once people do use the new stuff, if they enjoy using the new stuff more than writing and battling with old styles then that’s going to make them want to keep using that style. So making sure that your design system actually is enjoyable to use does make that design development easier to use and makes the work flow faster and easier and better. I think that’s an important part of it.  

When you were first auditing all of the existing design components, did you uncover a lot of unexpected inconsistency?

     It wasn’t a surprise. It’s not the first time I’ve worked in a company that has many, many people contributing. And I think that’s to be expected. That’s going to happen over time and I think older companies don’t start out thinking that one of the first things they are going to make is a design systems team. I think it’s when things start to become quite painful that they realize that they need people focused on this.

It has been around for quite a few years and it’s had hundreds of engineers and designers contributing to that so nothing was really super surprising to me. Probably the one thing that did surprise me the most was the lack of a color system which I recently worked on and I am a little baffled about that not existing for a while.

As a designer, do you find that having a development background on a design systems team is particularly useful in everyday work?

     Absolutely. It means that you can help build the design system. It’s more likely to be successful and be implemented if you can actually take part in building it. You have to work probably a lot harder in building a relationship with an engineer to say you made up all the stuff and say, “Can you please build it for me?” Not saying that can’t happen but I think it’s very empowering if you can build it yourself.

And then I think you have a much better understanding of what this also means to engineers. When we design the design systems it’s not just for designers. It’s for anyone that’s working on the front end. Absolutely, I don’t know how I would really approach this if I didn’t have those sort of skills really.

For a design system, Is it a challenge to balance consistency with allowing enough freedom for creativity?

     I think unless you’re the sole person building the thing that you’re always going to have to collaborate with people and make some compromises. And for a design systems team all of your colleagues are the primary users. Everything you do for them does also benefit the customers too. But your first and primary user is all of your colleagues.

And so if you’re designing anything you need to have empathy for them and take those needs into consideration. And that means understanding the pain it might cause the engineer if you do things the way that is preferable to a designer. It’s about having conversations around that and seeing if you can find a way that works for both.

I think it doesn’t take away creativity. It’s just implementing stuff. I think this actually removes some of the mundane decisions and things that they shouldn’t even need to think about and gives them more freedom to think about much bigger problems. Edwin always uses the “what color should the button be” example. There’s a lot of problems to think about when you’re designing a new feature and the last thing I want designers to have to think about is how do they want to write the CSS.

And it’s really interesting that you mentioned that sometimes there’s compromises that you have to make because this is something that serves both designers and developers. Are there any that pop up in your mind through the years of having worked on this design system that were just necessary to get this implemented and useful for both groups of people?

I think the only one that springs to mind that feels like a compromise but I think I’m okay with that is that we have some patents that could be achieved all with utilities and single purpose classes. But for some patents you end up paying for that in the markup because you can end up with quite a lot of markup. And if you’re repeating that stuff in many places it doesn’t feel dry to engineers. And it also can mean people are worried about keeping consistency.

There are solutions to that. I think a lot of people are using things like react and are extracting things at a component level which has the CSS and the JS all together. We don’t have something quite like that in our stack at the moment. There are ways that we can extract patents. But sometimes we decide to group that up into a CSS component rather than having a lot of utility classes repeated.

That to me is a compromise but quite a reasonable one in the way things are right now. But if I was working on a personal project then I might not do that. Otherwise I am maybe really persuasive and get everyone to agree with me eventually. I don’t know. I think that’s one of the things I like about working on teams is when you feel like you’re making decisions that everybody is excited about and doing things that everyone wants. Compromise isn’t always a negative thing.

Has the technology stack GitHub evolved alongside the design system or perhaps as a result of the design system?

     I think we’re starting to get to that point now. I think honestly we have had a lot of work to do to get our base design systems into place. At the moment we’re rethinking how we package up stuff and how we pull in Primer. And at the moment it lives in GitHub because we just felt like we needed to get all of the design systems together and get it pushed out to the repo.

And we want to change that. And we’ve been talking with the Web systems team who sort of support us in an engineering way as the rest of the company. And they’re helping us come up with a solution that helps no just with them but other teams as well. I think we’re at that point where it’s starting to happen. But there hasn’t been huge changes quite yet.

How does the team measure the success of the design system?

     Again that’s something that we are starting to get a bit more serious about right now. We do track metrics and we’ve been talking about what are metrics for success. And so one of them for us is that we not just GitHub.com but that we have a lot of external other sites for things like our conferences but also things like our developer site.  Not all of them are using the design system yet.

So one of our metrics for success is that over time, all of them use the design system. And not only that, but makes it easier to stay up to date with that design system. Which is one of the reasons we sort of thinking about how we distribute the packages and things like that. So that’s certainly a metric. And then I’ve been looking at stats in terms of how many view in our code base use our design system.

And I’ve been tracking individual projects like what percentage of the code base is on the new color system and tracking that as the new project progresses. So I think it is really important to have visibility to see if that is successful. But it’s not just about how much of our site is using the design system.

It’s like are they using it in the way that’s intended. Or are there a lot of overrides or is there a component that is only used once. So those sorts of metrics are things that I would like to start tracking. That’s something that we’re actually working on at the time.

Has the design system lead to any improvements to either the efficiency or the overall consistency of product updates?

     Yeah, there’s been a fair amount of new features shipped over the last year. And that’s been great to have the new system in place. People tend to when they are rebuilding something anyway, they are more easily able to use the new system. And we’ve had a lot of positive comments from designers and engineers that just find it a lot faster to build stuff out. There was one project where they wrote without a designer for part of the project.

And two of the engineers were able to get really far just by using the new styles and referring to the documentation. Which is great because that the designer wasn’t a complete bottleneck for that project to get underway. A few of us were saying that we should keep track of all the nice things so when we’re having a bad day that we can go look at it.  

Without a design system in place, can design be a bottleneck in the development process?

     That’s an interesting question. I think that there’s a lot of companies that don’t have as many designers that they would like to have. I don’t think that for us that there was no design process involved before the engineers started building something. There was all ready product thinking and design expiration early on they just didn’t have someone there at the beginning to implement that. So I don’t really know if I have a great answer to that question to be honest. I think you’ve got to have design thinking in there somewhere. But I don’t think that always has to be from a designer.

Engineers and product managers can make great decisions too. And having some of the really simple design decisions documented that’s something that doesn’t require the presence of a designer to help you get through. But I think at some point in the project you need help from a designer to make some bigger user decisions and things like that.

Looking back at the whole design systems journey at Github, would you do anything differently?

     Yes. One as we started to be pulled in different directions, in hindsight, earlier on I would have been a bit more strict about focusing on one or two things at a time. And not try to do a bit of everything. That I think resulted in us feeling like we were always busy because you were trying to do a bit there and bit there and a bit somewhere else. It was hard on the reputation of the team because it wasn’t so obvious in what we were doing.

So I would have seen what was important to prioritize this work and be protective of our time and our reputation as a team. And say that all of these things are important but we are going to have to pick a couple of them so that we can be able to give more attention to fewer projects at a time and do a better job.

That was probably like one of the hardest lessons that I’ve learned which sounds so simple and really obvious right now but it took a while to figure that out and plan a better prioritization process. It just felt like everything was important to start with. So that was probably the biggest one. A really funny but very specific story was don’t do things that make builds fail.

We introduced a letter that failed if you added new styles if you fabricate and that just frustrated everybody. But on the other hand nobody knew our team existed so maybe that wasn’t the worst thing. Don’t block people’s work without really good reasons.

Now on the design systems team,  do you focus more on just a handful of tasks instead of doing a little bit here and there?

     Yes, as much as possible. I think it is just the nature of this type of work that we’re going to get constant request for help or questions. Because there’s still more work to be done. It’s just getting to the stage where I feel like the design system is kind of maturing. But there’s still a lot of refactoring work to do. So I think we’re trying to be focused on a couple of projects at a time. We’re just trying to use the First Responder schedule and CSS bug rotation to try to deal with the smaller but frequent requests. And it feels much better like that. It feels like we can be more focused and it feels like we can ship things a bit more often.

How does a team prioritize its work? Is it done together or more autonomous?

     I think it depends on the level of the project and the size of the task. So on smaller tasks the team makes their own decisions. Sometimes if they are a little bit unsure then they’ll just ping me or ping a few of us on a select channel and we’ll have a quick chat about it.

And if it’s something that feels like we need to have a wider discussion then we will schedule that. And then the bigger initiatives I meet with my manager who is also a contributor on the Web and creative team and the head of design. They’re both able to look at projects across the company a bit more and give me a heads up if they’re somebody that I need to sync up with that I don’t realize.

Or just a heads up about some of the projects down in the pipeline. And then I also bring out things that happened in the day that I thought we need to give more attention to. So it’s a bit of both. It’s some higher level larger product planning and then generally day-to-day people that I trusted to make their own decisions.

If you could sit down with somebody who’s about to embark on creating their design system, what would be the urgent advice that you give them?

I think I would tell them to document everything from the beginning.

Document as you go but don’t worry too much about how beautiful that documentation is. That would definitely be high up on the list. Like I was just saying, try to focus on fewer things at a time. Which I think is just generally sensible advice. And figure out what are the biggest points that people are experiencing.

Because if you can solve them for the rest of your team then you are going to win some fans and those people will become your champions as you grow and expand a design system.

Join the world's best designers who use UXPin.

Sign up for a free trial.

On Design Systems: Dan Mall of Superfriendly

We sat down with Dan Mall of Superfriendly to explore his best practices from design systems projects with startups and corporations.

Check out the full interview recording and transcript below.

To learn more about the benefits and processes of design systems, download the free e-book Why Build a Design System?

How did you get started working on design systems? What was that progress and journey like?

 I run a consulting company and we work with all sorts of different clients from mom and pop shops to Fortune 500 so all sorts of things, and the more clients we started to work with that have been in business for a long time, they started to realize that they have a ton of digital properties that they try to manage.

When I was doing work 10 years ago, it was like, “Help us get our website off the ground.” Right? But now everyone has a website and they have more than a website, they have websites, micro-sites, and apps, and all these things and they all start to get really … There’s a lot of discrepancy with a lot of them, because a lot of them are made one by one, there’s not a lot of consistency, there’s not a lot of efficiencies, and as organizations start to look across their properties and they go, “How do we manage all hundreds of the apps that we make? And why do they all look different?” They start to realize that they need some sort of system to be able to manage and update, but also just maintain all that stuff.

And I think the idea of design systems is a thing that a lot of organizations are sort of coming to rather than it like you know no one invented that idea and then people are climbing on board. It’s more like, people are realizing it pragmatically. So I think it evolved pretty naturally.

Have you seen a certain size at which a company benefits from a design system?

 I don’t think so, ’cause I’ve seen companies, start-ups that have a handful of designers start to invest in that stuff. I’ve seen companies that have tens of thousands of employees or hundreds of thousands of employees do it. I think it’s more about how many digital properties do they manage? There are certainly a ton of companies that have many, many employees that are just starting to get into digital now and they may not need a design system. But then there’s let’s companies that are natively digital like Airbnb, they’ve made a bunch of things and are starting to realize before they get too deep into it, “Oh we actually need something to help us propel this forward.”

I don’t think that there’s any particular size that I can pinpoint, but I think it’s about how many digital properties they maintain or intend to maintain.

How do you sell the need for a design system?

 In my experience as a consultant, I rarely have to do the selling for a design system. It’s usually somebody who works at the organization that is in charge of digital or maybe a product director or something, or a web manager, or something like that really has to do a lot of the selling. Now we can help with that but it’s that person who really needs to make the case for it. So a lot of the clients that I work with, what they do is they sell things the way that anybody sells things which is you show people the pain. You show them like, “This is the pain that we’re experiencing and here is a solution that will help alleviate that pain.” And a lot of those instances it is a design system.

So one of my clients, I wrote a blog post about this, but one of my clients walked into his boss’s office with thumbnails, hundreds of thumbnails mounted on black mounting board to say, “Here are all the websites we developed this year and look how different they are and how desperate they are. Here’s how much money we wasted on that. And I know how to fix it and here’s how much money we’re gonna save if we do it the right way if we invest in it.” And so making the good case for it was really showing and visualizing the pain, like, “Here’s what it looks like to not have a design system. And let me paint the picture of what it actually looks like to have one. And we can compare those apples to apples.”

Right. That was the Seventh Day Adventist Church project, that you were talking about?

  Yeah. Exactly.

Brent Harding was the web manager there and he did a fantastic job of evangelizing that idea in the organization so that we had all the buy-in that we needed when we came in and did the work. I find the most success that we can have is ask people who come and help us consultants is when somebody internally has already done that due diligence and the level setting for everybody, the expectation setting. Like, “This is what we’re going to embark on because this is what we get out of it.”

How would you describe the benefits of a design system in 30 seconds?

  My definition is evolving and I’m not sure that there is a canonical definition but I would say that the more and more I’m thinking about the idea that design systems should help you design better and faster. Or maybe just better. I’ll just stop there. And for some organizations that means faster, some organization that means to a level of higher quality. I think it should help you design better. I don’t think, and this a thing that I previously thought, I don’t think that a design system should remove design from your organization. A lot of clients think like, “Oh, if we had a design system, we don’t need to design anymore, right? ‘Cause all the decisions would be made.” And I think that I’ve never seen that actually happen. Design systems should just help you design better. So you’re still gonna have to go through the process of design, but a design system should be a good tool in your arsenal for you to be able to design better. And eliminate some of the useless decisions that you might have to make otherwise.

What are some redundant decisions that you’ve seen a design system help eliminate?

So here’s a really oversimplified example, but what color palette should we have for this app?

Well, if you’re working in an organization that has a brand guideline and style guides and typography guidelines, that’s sort of a useless exercise]. You’re gonna explore a bunch of color palettes and then it’s gonna get shot down by someone. But if your organization already had that kind of stuff, having that codified in some way so you can implement it is easier. But for you to waste time exploring a thing that doesn’t need to be explored, I think that’s where a good design system can help out. Same thing with typography. Same thing with things that you should be able to take for granted, but if you don’t have the right tools you end up having to explore those things again and again.

Kind of reinventing the wheel.

What are some common design system mistakes?

 I’m not sure that I can pinpoint what mistakes clients make. I can tell you the mistakes that I’m making. One of the things is that I often have took for granted the fact that I know who the design system is for, I know how those people are going to use it. And the more I take that for granted, the more we work on stuff without talking to people, and the more we launch something and say, “Hey, this is gonna be good for you.” And then we find out that that’s very, very wrong. So it’s a fairly simple example, any good product design has that cycle in it where you gotta talk to your users, you gotta have both quantitative and qualitative data that supports the things that you’re making. Otherwise you’re just speculating.

A recent example of what we found was, we spent good bit of time designing a design system for an organization and then launching that thing and we get a ton of feedback from the people that it’s meant for saying, “We can’t use this. And here’s why.” And part of that’s just us not doing our proper due diligence in research and getting people in on the ground early, very early. Testing what we’ve got, validating it. Everything from what kind of coding standards are we gonna use all the way to where’s the rest of the colors that I can use? Every organization has different processes, so to assume like a good design system is there’s a canonical version of that, that’s a thing that I’m learning. There’s not. Every organization is a special snowflake and they have specific needs and specific people that use them.

So another example is that I’ve worked with organizations that the design systems are for purely developers. That’s it. It’s not for designers. And then in other organizations, a design system has to work equally well for designers and developers. And so just those two examples, those two design systems have to be drastically different from each other ’cause they need to support different use cases and different people. So I think that’s one of the things I constantly am reminded of and constantly making mistakes about of just taking for granted, like, “Oh, I know what this is for, I know what we need to do here.” And just forgetting to talk to people about it and really spending a lot of time interviewing and making sure we’re gonna build the right thing.

How does a design system for mostly developers versus one that is for a mixed audience of designers and developers differ?

  If I could sort of sum it up, and again there’s a lot of nuance in here, but just kind of generally, the design systems that I’ve worked on that were solely for developers are ones where a lot of the developers tend to say, “Give me the one line that I could drop in and everything works. Like everything’s hooked up, I don’t need to think about this. Take away some of the thinking that I’m not comfortable with and let me focus on the thing that I am comfortable with.” So if I need to build a certain component, I don’t want all the parts, just give me the one line of Javascript that I can use to plug in this component and it all works.

Vice versa, the design system for designers or one that has to work equally well for designers and developers. Sometimes those designers are thinking like, “Give me the parts and let me figure out how to wire them together. Let me figure out what the design process needs to be for this flow, or for this particular thing. I just need the kit. I just need what all the Legos are.” For lack of a better metaphor. And so some people want the Legos, some people want the thing that the legos make. And I think that those are probably the two ends of the spectrum and then certainly all the areas in between.

How would you describe your process for creating a design system, from start to finish?

 From a 1, 2, 3, 4 standpoint, 3 and 4 are almost always different for me so I’m not sure if I can codify that? But 1 and 2 tend to be constants so I can give you 1 and 2.

So 1 is, as you just said, just talking to people, just interviewing a ton, just talking to as many people as are gonna touch this. And having really a good sample size. We’ve talked to some organizations, 8 people and sometimes that’s representative enough. And then other times, like close to a hundred people and sometimes that’s representative enough. So I think it depends on the scale of the organization. 1 is just like getting the lay of the land of who’s gonna use this? How are they gonna use this? Is this person who’s very vocal, are they an exception to the rule or do they represent the median there? So I think understanding that is part 1. And spending as much time to do that as possible, I think I’m realizing more and more the value of that. So that’s part 1.

And then step number 2 is…I haven’t done a design system where we didn’t pilot it first. So what I mean by that is when a lot of people think of a design system, they generally are talking about a combination of a style guide and a component library and it’s tempted to say, “Well look, we could just build a bunch of components, we’ll build buttons and carts and tables and tabs and all that stuff.” But the way that we know that those are gonna work is through piloting and application.

So, step 2 is usually, for our work, is give us an inventory of all the apps that you use. So we walk through with people, whether on screen share or in person or we ask them to make print outs, however they can deliver that stuff, show us all the apps that you use. And just walk us through them and we’ll take screenshots and once we’ve seen 20, 50, 100 then we could start to inventory and say, “All right, of these 100 apps we just saw, or these 100 websites we just saw, all of them have some sort of left side navigation. That’s a component that maybe we should start with. All of them have a very specific kind of footer, or all of them have a special kind of dropdown.” So we’ll try to take the first 10 or 15 or 20 components that we’ve seen across 100 apps and then we’ll start to build from there. And then after the first 20, we’ll say to the people that are going to be using it, “Here’s our beta period, what do you think of these? Are these on the right track?”

And if they are, the next step after that is let’s use those things to try and build a new app, or maybe it’s rebuild one of their existing apps. Let’s try to rebuild it in the new design system and see how they work. What are we missing, what didn’t work out as well?

All of the design system projects I’ve done involve anywhere from 4 to 9 pilots of, “Kay, let’s get an inventory of this stuff. Let’s build a small component library and then let’s try to pilot building these apps with the design system and then rinse and repeat from there.”

So you start with almost a minimum viable design system in a way, right? And you test it out with the organization to make sure that, not only are the components correct but that it’s built to suit the audience. Then you can expand it.

  Absolutely. Nathan Curtis wrote a great article about the fact that a design system is a product. A lot of people see it as like, “It’s a website,” or “It’s a reference site.” Absolutely not. It is a product and you have to treat it like a product. It grows like a product, it gets used like a product. And for people to think like, “Yeah we’ll just create it once and then it’ll sit there.” They’re not realizing the value of it and they may not actually get value from it if they’re not treating it like a thing that also needs to grow in time and adapt over time.

In order for a design system to be successful, does it need a dedicated team to evolve and maintain and govern the system?

I’m split on the term dedicated.

So, I think if you mean somebody working on it full-time? I’m not sure. If you mean somebody who will pay attention to it when it needs attention, then absolutely. So I think it does need care. It needs sustenance. I think it needs people to pay attention to it when it needs attention. I think there are times that it can just kind of hang out for a little while while people are using it, but I also think that it needs to be able to respond to it. So if it’s one of those things that an organization doesn’t have any resources at all to devote to doing it, then it’s just gonna sit there.

I’ve been part of a lot of organizations that as they’re creating these design systems, they don’t have people to care for it. So most of the organizations that I’ve worked with have already had a design system at one point but it just was never cared for. It’s not like this is the first design system they’ve had, it’s sometimes the second or sometimes the fifth and with all the previous versions they’re like, “Oh well it was just one person’s pet project.” And then that person left the company and then it just sat there for a while. So I do think it needs some sort of sustenance and some sort of care to go along with it, to kind of grow. It’s like a product that doesn’t have a product team, it just sits there. And it doesn’t grow and then people get upset and frustrated because nobody supports it and they’re not getting answers to their questions.

In the same way that any good product has a support team, the design system needs a support team. Whether or not it’s full-time I think is up to it’s usage. But certainly it needs people to pay attention to it.

Is the cadence of maintaining a design system similar to maintaining an external product?

I would imagine that somebody that works at some place like Salesforce that had that Lightning Design System would have maybe daily or weekly updates to that. I would imagine other organizations that maybe use it more than they grow it. Maybe it could be bi-weekly to monthly, I’m not really sure I’m just speculating at this point. Not sure that I’ve seen enough to be able to answer that well.

For a design system, is it challenging to find that balance between ensuring consistency and inhibiting creativity?

 Yeah, absolutely. A lot of the times when we’re doing interviews, a lot of the resistance to a design system is well, like, “Is it taking my job away?” Essentially. And that’s why I, kind of to the question you asked earlier, that’s why I’m more and more liking the definition of a design system helps you design, it doesn’t remove design from you. It doesn’t remove the process of, “I have to create a thing.” It just helps you do it faster. I think any good design tool is that.

I could make a website without Photoshop. I could hand code it. I could make graphics in Microsoft Paint. Photoshop makes it easier for me to do that. But when Photoshop came out, a bunch of people said, “Oh, this is gonna kill my job.” So any new innovation in design, people have that worry. Any new automated thing, people have that worry and they don’t realize, “Well yeah, any design tool that could take my job is also a design tool that could actually make my job easier. Help me do my job.”

So I think the same thing is true for a design system is that if you think about it solely as a component library and all you’re doing is making and assembling components, then sure it could probably replace you. On the other hand, most designers and developers at the organizations that I know have design systems, the design system doesn’t solve their problem. They still have some sort of user experience or customer experience that they need to think about. A design system should help them to do that, it should help them build those things faster or more efficiently or more consistently. It should help them to do that, it doesn’t take away the work. That’s why more and more I like that definition that it should help you design. The creative part and the problem solving part, you’re not gonna find that in any style guide, component library, or design system out there.

How do you figure out the workflow between a design system and the products it serves? 

 I think it can go both ways and I hate to give the “it depends” answer too much, but I think it does. I’ll say that I’m working on a product right now and just this morning I went through with some of my team about creating our design system for it. We’re starting to create that now. One of the things that we talked about was let’s just be really scrappy about how we’re gonna build this. Let’s build one-offs as many times as we can. And then if we find that we’re building the same one-off 3, 4, 5, 10 times, then we codify that into a pattern. We’re taking that approach to how we’re doing this is like, “Let’s not worry about whether or not this rolls into the larger thing. Let’s do it on a small scale and then as we see it cropping up more and more and we get tired of repeating ourselves, then we’ll roll it into the design system.”

So we’re gonna keep the design system very, very small and it’s gonna be just the things that we know are patterns and we know, okay, we don’t need to reinvent that wheel anymore. And then as we see more and more of those things, then we’ll start rolling them into the design system. I like that approach, that’s a approach that I’ve recommended to a bunch of my clients is like, “Don’t be too aggressive on everything’s gotta go into the design system because that’s a way to bloat the thing.” So rather than bloating it, instead just be very vigilant about what things make it in and what things don’t. It’s okay to build a bunch of one-offs. And there’s gonna be a little bit of inefficiency there but that’s okay as long somebody’s noticing. As long as you notice, “You know, this is the fifth time we’ve built this thing this way. Maybe we should patternize this somehow. Maybe we should say okay, this is a common thing and we need to reuse this solution more and more so that’s when it rolls into the design system.”

How do you measure the success of a design system? Are there certain metrics you communicate to clients?

  Absolutely. I think the most obvious one is time spent. Like with a lot of clients, when they say, “Hey we want to make a design system.” At that point, even if we’re not starting work together, I’ll say, “Great. Measure the time it takes you to do this thing right now.” So like how long does it take you to build an app? How long does it take you to build it? And you can generally, you can translate that into dollar amount. The amount of time a salaried employee spends on it times their salary for the amount of time they worked on it times the amount of people working on it, right? You can quantify that fairly easily, or roughly. And if you can say, “Well look, this took us 6 months before and roughly 375,00 dollars. And then after the design system it tooks us 3 months and it cost us 175,000 dollars.” You can make a very good case as to how that’s gonna work out.

So before and afters tend to work well. It’s not good for … If I’m at a company, I’m trying to convince my boss to make a design system, I don’t have numbers, so I don’t have a before and after. But I think the more other organizations start to publish that stuff and become more public about that stuff, it’ll be a lot easier to say, “Oh, look at Salesforce numbers, here’s how much they saved by having a design system. Look at Airbnb and Spotify.” These companies that have been very public about their design system work. I’m hoping that in time they start to publish some of that stuff too and in the same way that they’re publishing their code and their design style and their component libraries, I would hope that they would publish some findings about, “Here’s what it’s saved us. Here are the benefits of it from a bottom line standpoint.” And other companies can look to that and say, “Look, there’s a path here already. There’s logic to this and so we can make a good case for doing it ourselves.”

Have you worked on any design systems that created surprising results?

  Almost every time. I don’t know that I can point to any specific thing or at least talk about any specific thing. But especially because we get a lot of users in before we’re done building the thing? I think part of what, I don’t know how to explain this, part of the value of a design system is to be able to point to a thing as a showcase piece. ‘Cause we could say, “Hey look at this cool design system.” But if no one can understand what you can make with it, then it doesn’t matter.

Having people come and work with it early and then when the design system launches, also launching with a gallery. Here’s a gallery of stuff that people have made already with it and you’re looking at those things going like, “Wow, I didn’t even realize you could make this.”

One of the organizations I worked with, they tended to use Material Design as their design system before they had something custom and in house. And they had a bunch of people making amazing things with Material Design. And once they had their own custom design system, people that were doing things with Material Design were creating things with their own design system and saying things like, “Wow, we couldn’t even create this with Material Design as easily as we could with our own thing.” Those are good testimonials, those are good rallying points for people to see within our organization look at what people are doing with this, look how much easier it is for us.

And the kicker of course is that it does have to be easier, you can’t fake that stuff. So it actually has to be authentic, it has to be genuine. I think the more and more examples we have of that, the easier it is to get more adoption.

Do you tend to help organizations build design systems completely from scratch or do you get brought in to improve an existing design system?

I would say that 90 percent of it has been we know we need a design system and we’ve had kind of starts and stops, but we just can’t figure out how to get this thing off the ground. And so a lot of our work tends to be how do we help organizations get to a v1? And part of that is because it’s not just making a tool, it’s different than making a website, if we were just making the website part of it it would be easy, but the reason that the design system is so hard to get off the ground is because it requires organizational change. It requires people to have different mindsets about how they’re going to work.

For example, if you have isolated design and engineering teams, a design system isn’t gonna do you very well because a design system requires collaboration between designers and engineers. If you don’t have a culture where that already exists, in order to even know that that’s gonna have adoption, you have to start to change the culture to say, “Okay now we’re going to be working together in a different way.” And that takes a lot of work.

So a lot of our work around the design system tends to be not making the tool but really coaching the teams on okay, here’s what it looks like to be more collaborative, here’s how you work on it. Here’s how you shorten your cycles from 6 weeks to 3 weeks because you’re working on pieces and you’re working on atomic parts and you’re working on collaborativeness. And you’re not building in this very waterfall, you design everything and sketch and then you throw it over the fence to this person. It’s all that organizational change that comes with it. It’s not like going away, making a website. It’s more like how do we coach people to work better together? And then once I understand that, what tool can even further facilitate that? And design system is a good example of that.

A lot of them can’t get it off the ground because they don’t know how to do that piece of it. They like help, so we tend to help with stuff like that. Very rarely have I come in to like, “All right we have a v1 already, here’s a v2.” And the reason for that I think is fairly obvious, which is that once you learn how to work collaboratively you can do anything. That’s the key. The key is being able to work together and if you can work together, you can solve any of the problems. So one you get it off the ground, you’re already along that train and then the v2 solves itself because you already know how to work on it.

At a organizational level, can a design system becomes reroute and improve your workflow?

 Totally.

I’m not sure that the tool itself forces collaboration but it certainly a catalyst in encouraging that type of work. Just having a design system isn’t magically gonna make an organization work better together, but the process of making one kind of forces these situations that maybe an organization hasn’t had before. And then they go, “How do we do this? Wait what do you mean we should sit together and work? What do you mean we need to reorg the way that our organization is structured? What do you mean we need to have a design system team? Why do we need to do that?” And it kind of forces those conversation. So it’s certainly more of a catalyst for it than anything.

Do designers on a design systems team need a development background?

Certainly not a requirement. It’s funny, I just did a talk about this yesterday. I was talking about that at the  O’Reilly Design Conference. It’s definitely not a requirement. You can create great digital experiences, and some of my favorite collaborators are designers who have never touched a lick of code or developers who have never, never don’t admit to being designers at all. I think it’s certainly possible to make great things without that.

I do think it helps though. I think that … And the reason is is empathy. The reason is that the more I know about what my collaborators are doing, the better I can help them, and the better I can serve them. The better I can take work away from them. The more they can take work away from me. So if I’m working with an engineer, if I could say, “Hey, you want me to write that JSON file for you? You don’t have to worry about it.” That helps that person out and they can focus on something else that’s more worthy of their skillset and their time. Vice versa, they can take work away from me.

I find that the more we can do each other’s jobs, it’s just means we can help more. If I don’t know how to do what you do, I can’t help you. I don’t think designers coding is a requirement but it’s certainly helpful because it means you can jump in.

Have the processes of creating design systems evolved over time?

It’s interesting because a lot of organizations and teams say that they’re agile.  And then when you get into their nitty gritty, you’re like, “This is not agile.” What it generally tends to look like is, oh the engineering part is agile but then the design part, the graphic design, the UI design, whatever you want to call it, that part is the waterfall part. We’d design stuff first and once all the design requirements are done, then we can get agile about this. And that’s not the way to do agile.

I think that a good design system will roll everyone into the same process. Whether that process is a waterfall one or an agile one. I’ve seen it work more successfully in flavors of agile and that’s how my team tends to work, is in that way. I think that the process of sort of rolling it out, keeping it up to date, is one that needs to work like any good product design cycle and it’s not a coincidence that generally a lot of product design cycles are centered around an agile workflow. I think part of the trick is how do you get designers involved in the agile workflow? Because a lot of designers feel like they’re at the outskirts of that and don’t really know how to be involved.

UX designers is a little bit different. UX designers and engineers tend to be a good pairing. But graphic designers or people that are doing UI design don’t quite know how to fit in to that. I think part of that is how slow they move in their tools. I think they need better tools like a lot of people will take a full day to bang out a comp in Photoshop or 2 days or 4 days in Photoshop or Sketch. And that’s not conducive to a very fast moving, nimble environment.

Designers, graphic designers, need to beef up their skillsets in getting faster at the work that they do. So that they can fit into a more rolling process and need to be able to bite off smaller chunks. Which engineers have learned how to do over the years. I’ll work in a way that is modular and work in a way that is … I can break off different pieces and measure those pieces. So designers haven’t quite figured out how to do that as an industry yet. So I think that the more designers can fit into that, then they’ll fit into a cycle that fits naturally with Agile.

So how do you see design systems working with Agile?

I think the design system fits in the way that any good digital product project process works. Everybody’s seeing, everything’s transparent, you’re seeing what everybody’s doing. That’s what the agile process does, it exposes those things through rituals like daily stand ups or retrospects or things like that.

What I find is that designers don’t know how to do that generally. They don’t know how to fit with that. And I think part of it is just the chunks of work are too big. So engineers know how to chunk their work down into things that you can measure, things like velocity or work in progress limits or depending on the flavor of agile. Designers are like, “Well I have to design the product inside and out.” And how long is that gonna take? I don’t know. It takes as long as it takes. Well you don’t have to design the product. Design the header, how long is the header gonna take? Oh, 2 hours? Great, chunk it up in that way.

I think as designers are sharing more often, I think if they are exposing some of that process more often, then they start to get in that flow of, “Okay, let me show something that inspires someone else. And that person’s work is gonna inspire mine.” And kind of let them riff off of each other. Like that’s what a good agile process does, is it allows this kind of double dutch thing of somebody works on something and somebody else works on the same thing and somebody hops in there and then somebody else, like it kind of builds on each other rather than, “Let me do my part and then I’m done and then it’s your part. And then your part can’t influence mine because I’m done. Because I said I’m done.”

And so by chunking that up, I find that that’s a very useful way. It’s a very simple but useful way to figure out, “Well let me just share a little sketch of what I’m doing, let me share a piece of what I’m doing.” It’s a bit a cliché now, but I think that it works. It’s like share small pieces more often. And designers, of everyone in the process, are the most guilty of not doing that. They share larger pieces less often. ‘Cause they feel like they gotta do the big reveal thing and they’re afraid that if they reveal something too early or too late that people aren’t gonna see all the things in it. I think that if you give your team credit for being smart and being able to see through certain solutions, see to the end of it even if it’s not fully realized, I think that actually opens up the door for a lot of good value.

Does the modular nature of design systems facilitate an Agile design process?

Maybe, I’m not sure. I haven’t really thought about that too much. I think that certainly design systems help designers be more agile because it makes you faster. I could simplify it more to be like anything that makes you faster helps you fit into that process. ‘Cause the process is about speed at some point. There is a reason that Scrum measures things in velocity. It measures workflow in velocity. It is factor of speed, it’s about how quickly you can get things done. And sometimes it’s about- it’s not about fidelity quite yet, it’s really just about pace.

A design system at some level would probably help you to do things faster. It’s a good tool for speed. And I think tools for speed help designers, engineers, everyone to fit more in that process because they can make more in a shorter amount of time and then share it. And say, “Here this is done, everybody check this out.” Or, “Look at this and tell me what I need to do in the next cycle for it.”

I think that designers, maybe of all the industries so far, don’t have the tools for speed as much as other industries do. And so I think that the more we get better tools for speed, design system being one of the major ones, I think the better we’ll be able to fit in.

What design systems do you find particularly interesting or inspiring?

  I’m not sure that I can name many digital ones, other than the usual suspects. I think one, I’ll say that any design system is a major feat. Launching one, creating one, maintaining one is a feat in itself so if you have a public design system out there. Congratulations, that’s an amazing thing. As I think about those, Material Design, Lightning Design System, Harmony by Intuit, Glue from Spotify, the Airbnb, the companies that have been very public about theirs are … Those are major feats at those organizations. So those are great.

I will say the ones that I learned the most from … And it’s not to knock the digital ones I just think that it’s too early in our industry, we’ve only been around for whatever 30 years, and we’re still getting our bearings on what conventions are. So a lot of these style guides, a lot of these design systems are not specifically design systems for the implementation that they’re in.

For example, Material Design isn’t just a good design system for Google products, it’s just a good design system for anyone building for the web. Same thing with Airbnb, same thing with Lightning, those are all good for general best practices. I think what those are starting to do is they’re starting to create conventions for us as an industry for the designers and the engineers as an industry. Because they’re giving us things like, “Oh this is generally what navigation should look like.” And it’s no coincidence that navigation patterns and tabs patterns across all of those design systems are pretty similar. ‘Cause they’re starting to surface these conventions.

When I read some of the design systems in the print world or specifically the NASA style guide and the MTA brand guidelines, as I look at those design systems those to me feel very mature and they feel like they help me to design. If I was designing for the MTA, I would know exactly what to design and what to design for. Because the brand guidelines are so thorough. Not only do they give me the pieces that I need but they also give me the logic and the mentality to know how to design for those things. I don’t know that I’ve seen or could recall a lot of digital design systems doing that.

So when I work on a design system I try to focus specifically on what makes for a good design system for this organization? Not generally on the web but for this organization. What are the patterns that they need that maybe others don’t? And those are the things to focus on for the design system. How many tabs can you design? How many interfaces for tabs can you design? But is there a specific way that this organization uses tabs that is custom to them, that if they had this out of the box it would actually advance their work? It would make them faster at it.

So those are the types of things that I try to focus on. I’m not sure that I’ve seen them in a lot of digital design systems, and partially because I don’t know the requirements for those organiza- I don’t know what Spotify needs, I don’t know what Airbnb needs, so I’m not sure what I would even be looking for there. I think those are the things that I try to focus on in my work.

If you could speak for a couple minutes with somebody who’s about to start creating their first design system, what would be your most important advice?

It’s a tough question. If I could only give them one piece of advice, I would say talk to people. Talk to the people that are gonna be using it, find out what they need, and then spend all of your time on that thing or on those things. I think it’s easy to get caught up on making design systems that look like the ones that are out there already, like, “Oh this is the convention, this is the guideline so let’s just make more of these.” And I don’t know that those are necessary. And I certainly get caught in that trap all the time. Like, “Well, Salesforce looks like this so ours should look like this too.”

But oftentimes you’ll find out that people in the organization, they don’t need that stuff. Sometimes they do and it’s good to know that and sometimes they don’t and it’s good to know that too. If I were to give advice to someone, I would say, “Talk to as many users are you can.

Talk to them about what they need and just build that stuff. And as soon as you build that and no sooner or no later, as soon as you build that thing see if you built the right thing.”

Talk to people and then test as early as you can to make sure like, “All right, is this what you said? Is this what you meant?” Oftentimes you’ll hear a “no” and the earlier you hear that “no”, the better chance you have of getting it closer.

Join the world's best designers who use UXPin.

Sign up for a free trial.

The Intuit Harmony Design System: Insights from Joe Preston

How do you maintain and evolve a design system for multiple web and mobile products?

To find out, we spoke with Joe Preston, Director of Design Systems and Engineering at Intuit. Co-founder of the enterprise UX consultancy Momentum Labs, he joined the Intuit team in 2016 to help them scale their design system across all products.

Joe Preston photo

Joe explains how to sell a design system, strike a balance between consistency and creativity, and other lessons learned over the years. Check out the full video and transcript below.

To learn more about the benefits and processes of design systems, download the free e-book Why Build a Design System?

What’s your background and how did you come to join the Intuit design system team?

I’ve been with Intuit for a little over a year and three months now. Before that, I was partner at an Enterprise UX agency where I did mostly enterprise software design.

I interviewed. I actually knew Suzanne Pellican because she had spoke at some meet-ups that I run for client and Enterprise UX meet-ups, and I was always really impressed with her, and I had always thought of Intuit as a design-driven company.

Coming out of an agency where all I felt like I was constantly selling even really large clients like in Intuit on how to build, and design, and even ship your product, but really not having experience that from a large software company perspective, so that was really what I was looking for in my career. Then, the small business group, basically QuickBooks side of Intuit, had had a design system working for a while known as “Harmony,” and so I took over when I started for the previous person that was managing Harmony, and it was just an interesting … I just found it an interesting challenge.

Coming from enterprise, I always loved systems, learning about different systems and what makes them tick, especially…not necessarily even from a technology standpoint all the time, but I love people, and processes, and what tools do you use, and so I had the benefit of walking into a design system that had already done a significant amount of change across the company, and it had been very successful at least for Intuit in terms of changing the landscape of especially QuickBooks and all the products under that to the point where all the top-level executives saw it as a key contributor to the success that was about that business group. I had the benefit of coming in with that sort of groundwork already laid for me.

Really, what I was looking to do was take the design system to the next level, figure out how to add some pieces to it maybe that were missing. Design systems can become dated or they can become irrelevant to companies for a variety of reasons, and so part of what I found interesting and challenging was how to make it more relevant and how to make it solve problems that the company was having now when I joined, which were different from when the problems it was trying to solve when they started Harmony.

I love a new challenge, and I think the stars aligned for me somewhat in that I was walking into a design system that already had some legs underneath it, but there’s a good and a bad to that too. There are some legacy issues with the design system that I also inherited too.

How did the problems faced by the design systems team change over time?  

I think that one of the problems was that Harmony in and of itself really was focused on taking QuickBooks online products and making them have a cohesive experience. I think what changed over the business is people started to realize that, “Look, your customer experience is actually end to end. It’s not just your product. It’s everything from the point in which they hit your marketing website to even when they call up and talk to a care agent. That’s all really part of your customer experience.”

When we looked across that landscape, it was very disparate and very all over the place, and so the company’s mindset had shifted to thinking about really the product only being the core tenant of the experience to looking more holistically at that, what we call the “end-to-end experience,” so that was one change.

Another change was that mobile became more of a focus. Harmony started in the early on days of … especially for mobile apps within Intuit being not really evolved, not well-adopted, and so the early stages of Harmony was … It was really for a web desktop sort of product experience, and the company had shifted in terms of wanting to focus on mobile or even mobile-first, and we didn’t have a design system at the time there who supported that.

To some of the other sort of things that I think had changed for Intuit is we had decided as an Intuit wide ecosystem, so now think QuickBooks, think TurboTax, think Mint, and a product group we have called “ProConnect,” and because Harmony had been fairly successful as a design system enacting change for one business unit, it makes sense that all the business units begin to see like, “Well, we actually could benefit from a design system because we’re now seeing customers move from product to product, and those are very different experiences.”

The first part of Intuit design system was aligning on the core tenants of what we consider for our system, which are really the brand visual language, and so that was really … When I came into the business, when I came into Intuit, it was really starting with, “All right. Well, let’s at least align on our core tenets of our visual language, and then we can begin to build on that.”

To be honest, we’re still in the midst of it. For a company of Intuit’s size. I think we’re at 8,000 employees. It’s going to be a long journey, but I think what we were getting to see the fruits of creating the model of our process in terms of working together as brands because we have really different customers and use cases on it, so I think that’s the biggest challenge for at least Intuit design system.

After defining the visual language, what was the next challenge you faced?

Arriving at a process, and a contribution model, and a decision-making framework that we could scale, especially where all the businesses of Intuit felt like they had ownership, felt like they had a sense of the design system is by the people, for the people. I was talking to Nathan Curtis yesterday, and we were talking about this same kind of concept.

That was crucial to get right because before I got to the company, there had been central top-down-driven initiatives to try to get all the brands to adhere or be cohesive, and those initiatives from my understanding had failed just from the standpoint that they were top-down-driven.

One of the first things we wanted to get right was making sure we’re taking more of a bottom-up approach in terms of not only what gets proposed to be added to the system, but then also, how decisions get made and then how decisions get disseminated. That really I think is the crucial piece to making it work, and that’s really … to use another Nathan courtesy dimple. That’s really having a small central team to help drive initiatives. Then, really having a delegated model where there’s a whole wide variety of stakeholders that give you that diversity of thought that you need. To be honest, I think that was actually the more crucial piece to design system.

How did you structure out your design systems team?

The QuickBooks side of the house already had a design systems team, which I came into, and so that consisted of four designers.

First, I brought in two contract front-end developers to work with the design system team, and then we actually built out a design engineering team that works in parallel with design systems. That way, we could really have a nice blend of designers and developers, but again, we were still operating mainly under QuickBooks with that model.

Then, when we became more involved with Intuit design system, what we decided is there needs to be a central team to drive this, so at the Intuit central or group, we hired a small team, and that was a designer, a developer, and a program manager since they like … That person acts basically like a product manager.

Then, each of the business units have assigned representatives that really drive the initiatives forward. I’m the representative for QuickBooks. There’s another equivalent for TurboTax, Mint, and ProConnect. Then, we meet multiple times a week going over … reviewing proposals, talking about what we’re going to do next, aligning our roadmaps together, and then we try to involve different designers and teams from each of our businesses to actually be the boots on the ground so to speak. Sorry about that, the boots on the ground so to speak, doing the work.

   The central team really acts as…making sure the work scales for the ecosystem, making sure the documentation is tight, and then making sure that the information is served, collected centrally, and disseminated out to all the teams.

  We’re still in the early stages of that. We’re building basically a toolkit or a source of the truth for Intuit design systems, starting with components and those sort of foundational visual language elements. Whereas on QuickBooks Harmony side, we’ve actually had a site, a source of truth for a long time, so we’re taking all our learnings from Harmony, and we actually have a new site, design.quickbooks.com. We’re taking all those learnings and applying them now at an Intuit-wide level.

How many people are on the design systems team now at Intuit?

We probably have eight or nine people 100% dedicated to design systems. If I were to add in all the contributors though, then we’re probably getting up until like 30 or 40 people, but a lot of those people are just brought in part-time capacity to drive through whatever initiative we’re working on at the time.

Is your work 100% dedicated to the design system?

I am, but I’m straddled between the two.

QuickBooks in and of itself has a whole bunch of products under it, and QuickBooks … Just to give you an idea of scale, the small business group or the QuickBooks group has 170 designers in it. Just QuickBooks. Whereas all of Intuit has, I think, 200-something, so over two-thirds of at least the design support we have to offer is just for QuickBooks because there’s QuickBooks Self-Employed, QuickBooks, QuickBooks Accounting. There’s desktop. It just goes on, and on, and on.

I’d say I probably spent about 60% of my time on components and patterns changes just within the QuickBooks ecosystem, and then as we’re doing that, we’re trying to either think about how to scale them for Intuit-wide or use stuff that we know some of the other brands have more established like QuickBooks … TurboTax has a lot of really great components and patterns that we’re starting to leverage now. The other 30% of my time, I’m trying to dedicate to the Intuit design system and make it more over time.

What does the approval process look like for the design system?

First of all, we align all of our roadmaps, and we make sure that the design system hopefully is going to provide solutions that we need by X amount of time. That’s a balancing act.

Secondly, once Intuit design system takes on an initiative, we’ll basically have that person write a proposal. What’s the business case? What’s the customer case? And then we’ll actually turn that into just this document. Think of it like a creative brief.

The creative brief is then reviewed by essentially like the drivers board, which I’m on.

Mint, TurboTax, QuickBooks, ProConnect. We all review everything, go, “Yeah, that’s a great addition to our system. Let’s move forward with it.” Then, that team that initially proposed it from whatever product it’s from drives it through … There’s a driver, and then they’ll go and basically gather use cases from the ecosystem of what this affects, and they’ll basically … We call it “go broad to go narrow.” You’ll start doing concept exploration and testing with customers

Then, over time, you’ll start to narrow down your focus and iterate on particular past. This is where we also might start prototyping it in code, putting it possibly in front of customers again in code, and then final process is the same group basically approves it. We do have approvers … or Leslie Witt from SVP and Kurt Walecki from TurboTax. They’re the final approvers.

Then, it’s live. Essentially, if we don’t have component code yet, then we would start production, but a lot of these things will finish with a code component, but it could be other things. It could be adding styling variables to our CSS framework. It could be … We added a new color to our color palette because we realized that we’re having some accessibility issues with one of our colors in particular. It can be a whole range of things, and the delivery … so the artifacts of delivery also can range quite a bit.

Is any designer, or developer, or even product manager free to suggest changes to the design system?

Absolutely.  

How do you measure the success of a design system? Are there like certain metrics that you’re looking at?

That’s a great question. I think it depends on the element that we’re using, but let’s say like a UI component gets introduced. What we’re starting to measure now is the number of contributions to that UI component. We’re measuring the velocity. We should be, let’s say, story completion time that it took us to build that component, but now we’re taking it to the max level, and we’re actually looking at how many instances of that component are being used in the product and where, and we’re also starting to look at how much traffic, how much customer traffic is actually going through that component.

Over time, what we’re thinking is that will allow us to really focus on areas that we really want to refine or get better based upon things that are actually being used a lot. If it’s something like more brand or visual language related, that stuff is tougher to measure. Honestly, like if it’s a tight phase change, we’re measuring things like accessibility and usability of customer feedback. But then, there’s other more qualitative or even subjective measurements which is just, “How are we perceived as a brand? Are we perceived cohesively as a brand?” That’s another measure we’re looking at called “brand health.”

Like it depends on what the artifact of the system is and how we would measure success, but we’re definitely … Velocity is huge to us, and then also making sure that what we put out is being contributed to a lot, and then is being adopted by teams a lot. Then, the next level is it’s actually being used by customers and they like it. Those are the KPI or the success metrics that we’re working with right now.

Since you’ve started working at the design system, have you seen changes or improvements to the product development process?

The design system isn’t fully adopted across all the products to the same level.

I think that QuickBooks probably is the most adopted the most things out of the design system out of the other brands, but one of the things we use in the design system for is when we change our visual language, we actually use some new elements of our design system such as the CSS framework to roll out all the color changes, all the typography changes across … Shoot, there’s like 12 different products.

When I came into the company, part of what drove this was a lot of the design leaders getting frustrated by saying, “You know, we want to change our button colors to green across the board, and all the engineers are telling us this is going to take like 40 months or …” The estimates were like in the years’ timeframe, right? By the time we get done with it, we won’t even be using UI anymore. We’ll be on to like voice, or gesture, or something. When I came in, I was used with this catalyst of like changing our button style, right?

When we looked at it, we said, “Hey, look. We’re not on the same technology stack, so what can we develop that will help accelerate adoption and help with cohesiveness or dare I say consistency, which was a CSS framework?” That was just really like a lightweight set of semantic variables that you find in any UI component library that we could apply to a variety of components or even marketing websites, so that was like our first step is, “Let’s develop a set of style variables,” and then we’re going to actually go around to all the teams and train them and let them know the variables exist, how to use them.

Then, we also had to embed and pair programmers and designers with each product team. It’s amazing what happens when … If you just ask an engineer for an estimate based on a red line spec, you get a very high estimate. Whereas when you sit down with them, and you open up the IDE, and you start changing the code, boy, it was a lot faster than anyone expected.

I think that was the other part of it was just really not just mandating that teams have to adopt it by X timeframe, but sitting down with each team and understanding their needs and understanding … You’d walk into a product manager’s office and you tell them, “Hey, I want to change all your button colors to green, and I need like two of your engineers to do that over the next few months,” and they slam the door right in your face.

Whereas you come in, you go, “Hey, look. We’re changing the whole ecosystem. Here is the reason why. We’ve done a lot of customer testing, and we’re getting really good results in this visual language. How about we sit down with one of your front-end developers and give us a couple days, and we’ll just crank this out?” That makes the conversation go a lot easier.

We used at least the starting phases of Intuit design system as a way to prove we can roll out a whole new brand in a fraction of the time that it would have taken us before, and that was a big sort of proof point I think. We started really doing the brand work I’d say about July of last year, and we rolled it out across at least all of our online products, a couple of our mobile products, and then our web or marketing products. It was all done by December.

How did the team balance all the requirements without turning the design system into a total compromise?

Having a defined process, so like I said, it’s really important actually to have creativity for some set of requirements initially about, “What are you trying to accomplish? What’s everyone role?” Hopefully, that’s backed by some customer or some business benefit, so I think as funny as it sounds, I think it is crucial to at least upfront spend a little bit of time defining that stuff.

Then, I think it’s useful for you to gather use cases that we still flagship products or flagship experiences because those might be your highest sort of customer touch points, and you also have to weigh that some … in a larger organization that has lots of products, there might be some products that are on older legacy text stacks or just the cost to them to adopt a new design system or whatever it is, is just too high.

There are pretty easy matrix you can make in terms of cost benefit ratios about adopting the design system, and you can make tradeoffs about what are the elements of the system that you need to be aware, and so we did a lot of that. In terms of … We also identified like who are influencers amongst each of the product groups and made sure that they had a hand in helping not only gather use cases, but helping review the design proposals that were coming through, so that they felt like their voice is heard.

Then, once they got back to their product teams, the other advantage of that was those people had just been involved in the design system work, so who better to be an influencer of that product than that person? We found a lot of those people and took them out to coffee and beers a lot.

In terms of future-proofing a design system, that’s a great question, and it’s probably my biggest concern always. That can be really frustrating to people because most of the design systems are not on the bleeding edge of innovation. Brad Frost actually had a great article about this recently called like “The best design systems are like the really boring ones,” and there’s some truth to that.

If you do believe that your job as a design system is really to enable the products to do the best work that they can and to support them, but not to be the determinant factor of what gets released in products. The product teams and the marketing teams, they own basically their destiny, and all we can really try to do is help them achieve that destiny, make sure our tools are the latest and greatest tools, make sure whatever artifacts we’re providing to them are really easy to consume, really easy to use, well-documented, and I think that in relationships and an inclusive process where people feel part of the design system is the key to future-proofing it.

Do you find that there’s also a challenge around prescribing enough guidelines to ensure consistency versus giving some wiggle room?

That’s a great question. At some point, you don’t want to step on the product designer’s toes and be so prescriptive that you’re really restricting them from doing their job, which is figuring out how to make a great experience, and so there’s definitely a balance there in terms of … I think we’ve made the mistake plenty of times of probably being over-prescriptive. We try to develop this concept in Intuit design system of having what we call “fixed” and “flexible” elements as a way to help give guidance … depending upon your use case or however, whatever context you’re going to use it in. We’re anticipating all these elements will change, so we’re trying to do that.

Then, the other part of that I think would be the … This is the difference between a component and a pattern, most people would say, so like you think of components as being really reusable, really modular. They’re usually coded, but they don’t necessarily solve that specific of problems, and they’re not really that contextually relevant, whereas … That’s why people develop interaction patterns so you can have a more prescriptive set of instructions of like, “For this particular context, this is how we want you to treat, let’s say, navigation,” or, “This is how we handle search,” or whatever it is.

I think that’s where you can find that kind of balance of having these really reusable modular things like Lego pieces that can be put together in a variety of ways. But then again, you need some semblance of cohesion, so you have to have some prescriptive instructions maybe in the form of patterns, maybe in the form of fixed, flexible sort of properties on things. I don’t know if that answers your question or not, but …

   Dos and don’ts are another great way to show more example-based guidelines in terms of where you’d be prescriptive. Fixed and flexible, that’s a concept that … I think when I initially first … When we were talking about, I really struggled with that concept because I felt like it was being overly prescriptive, but then I’ve seen tons of cases where designers and developers love those constraints or love to have guidelines around constraints because it gives them … People sometimes do their best work when they’re just giving a few sets of constraints to work within, so I’ve come around to realizing that I think those properties on some of our elements actually help people. It’s something interesting.

How did you evolve your technology stack with the design system?

When I came in, there was a … If we just take, let’s say, our web products, there was a variety of JavaScript-based UI component libraries out there. All the usual suspects. JQuery, a little Bootstrap over here. Dojo all over the place. Another initiative I was part of was essentially looking at re-platforming the web technology into something more modern. We had another team on angular as an example. That was also where we looked at … We borrowed from the salesforce lightning tokens, design tokens idea of, “We could at least develop like a CSS framework or a set of CSS variables.” We can even transpose or transform those variables into like whatever syntax or format we want, so that helped become this bridge between the design system and the disparate at technology.

Separately, we did arrive at using the React for our UI components, so we built our UI components using React, ES6 syntax. They’re responsive. They do use a flex box. Then, separately, we’re looking to do similar with native mobile components, and so we’ve got some competing technologies at play. One is basically a single-page application show that we can embed in a native app that allows us to show web experience seamlessly.

Meaning, like we pre-cache everything. All the components are responsive, even adaptive, and the user doesn’t really know that it’s actually web, which is … It’s funny. Like in my old job, that has been tried so many different ways by so many different companies that when I heard that, I’m like, “This is a terrible idea.” But then, we actually pulled it off where it’s actually pretty seamless.

The other competing technology is like React Native, which when we started down this path of picking React, React Native was still very much in its infancy, pretty buggy at the time, and so we weren’t ready to dive 100% into React, but recently, it’s actually … It made some leaps and bounds, so we’re revisiting that, but just to give you like … When we chose to go to React and we … from just pure web JavaScript components, we’re looking at … on average, it’s like 60% to 70% less code for the React component, so it’s significant.

   The other things we’re doing are adding like continuous integration, so some CICD stuff where we’ve got linkers, we’ve got automated functional tests both locally like an automated unit test, and then we fire off a more significant set of functional tests, functional automated tests the minute you try to submit a poor request, so we’re trying to like tighten up our CICD of our library. Right now, we made really good progress.

Some of the other tools. We really liked the lightning team had built just for internal testing or internal monitoring of how people are using stuff. We’ve been looking to build not exactly like they’re doing, but had some similar concepts. Yeah. That’s basically where we’re at.

Should designers in a design systems team have some development background?

Not so much. Of course, that’s a really nice bonus. I think basic HTML and CSS. Yeah, that’s probably a must. In terms of, “You have to be a hardcore JavaScript programmer,” certainly not. I think what’s more interesting for a skillset for me as a designer is systems thinkers, so people that can think scale, can think about … I’ve heard it described as, “You’re not designing cars. You’re designing the tools that build the cars.”

   Another example is Nathan Curtis was talking about how the skillsets involved with the design systems team member are a lot more soft skills. They’re like communication. Can you influence people? Can you walk into a room full of a bunch of other designers, executives, and engineers, and have everyone essentially convinced by the end of that meeting that we’re all aligned on whatever direction we want to go?

   I think that’s really the key skillsets of design system folks because you’re the connective tissues with all these different people, and so it’s those social and the soft skills that come in the most handy more than I think technical skills, and that’s hard. When people come on my team, it’s like I know they just want to put the headphones and start cranking away a sketch, but it’s like unfortunately, you’re in a lot of meetings because you’re having to influence people or you … The other part of it is you have to see the breadth of what teams are designing in order to have those conversations in order to figure out like, “Oh, wow. That’s a new emerging pattern that we’re seeing happening right now. That is a really nice addition.” You have to be there and talk to those people to be able to experience that.

That’s what’s hard about … especially in the existing design system. I could see on a small company that doesn’t have a design system where it’s just like, “All right. Wipe the slate clean. Let’s do something from scratch. We’re not going to talk to you guys until we have V1 out, and then we’ll figure out how to have other people start contributing.” When you get to the point of … You’re at V2, V3, V4, and you really want to involve other people in terms of them feeling like the design system is theirs, that’s where those skillsets change of being more soft skills of a designer.

   What are some of the goals you have in mind for the Intuit design system at the current stage in its evolution?

Some of the goals are more around some of the more connective tissue elements of our products and our marketing experiences. Not just a UI component, but you look at things like headers, notification centers, sign in, sign on. There’s a whole slew of stuff that when you look at larger companies, those are really the pieces of connective tissue if you have customers moving from product to product like think of Google, right?

I think those are what we’re seeing now on the horizon as a big value add that the system can bring to the company. Then, the other thing is there are some business units that don’t have a design system, don’t have a team, don’t have resources, and for them, it’s nice to get a whole bunch of stuff that’s highly involved and been tested essentially for free.

   Maybe at the hands of QuickBooks and TurboTax, but that’s okay because we know that if one of us gets better, we all get better, so I think that’s the other thing we’re looking forward towards is, is everyone contributing their own little special areas that they’ve spent a lot of time focusing on? Like TurboTax, those guys have been through the wringer as far as like usability testing with customers and all sorts of stuff. The way they build their UIs is really progressive, and so they can bring a set of expertise to the table that we can all benefit from and vice versa. QuickBooks too has been doing some really interesting stuff in terms of … The new sort of text stack we’re moving with is something that the whole company actually really likes that new text stack.

Just the fact that we’ve had a functioning design system for longer in the QuickBooks side of the house, we’ve learned a lot of things about process, and we’re able to bring that to bear when we try to do it at a larger scale. Then, we’re looking at other stuff like we know … like the world is moving beyond the graphical UI. We all know that, right?

   I think the next challenge I see on the horizon for design systems is that … I think a lot of elements of design systems will become automated where the tools that we all use will export out. We’re already seeing this like Craft from InVision, or Inspector, or Frontify, or … There’s all these mini style-guide-generating apps, and that’s only going to get further, and so the next level for us is looking at other forms of user interface that are happening. How do you make a system out of those?

We don’t really know yet. We’re just dipping our toes in the water with this stuff, but because we all see that as part of our brand experience, if you’re talking to your phone, and repairing it, or you’re chatting, or VR/AR stuff, it’s like those are all ways that our customers are going to experience our brand, and so we’re going to want to have a system behind them to make sure they’re a cohesive experience and that they feel like Intuit.

What advice would you give to someone embarking on creating their first design system?

The first question will be questioning why a design system?

I think the answer would be, “What problems does your organization or your product have that you feel like a design system could provide a solution for?” Right? Especially, can you explain that to executives and stakeholders, and even quantify that problem, sometimes you need to, down to a dollar amount, or a time amount, or some sort of customer experience metric or whatever? Then, based upon that, I would decide what is the design system that we need that fits our org, that fits the problem we’re trying to solve for our org.

I think you can go really big like I would actually say we probably maybe have too big of a design system sometimes or you can go really small. You can just do like the mini Bootstrap library. It’s plenty fine for most start-ups and most small companies. .

My advice would primarily to be understand what’s the problem. We have a saying around our company a lot which is, “Don’t fall in love with the solution. Fall in love with the problem,” because solutions are always going to change, but I think … and understanding what is the problem that the design system solves for your company would be what I would spend a lot of time on, and making sure you’re really clear on that, and making sure you can communicate that to other people.

   Like a product, you need to have a roadmap, and you need to almost have a product manager to it, and you can have … By what sprint do you want to have X? That could be like a nice milestone. Everyone is happy. You can take that around. Say, “Look at what we did in this time.” But then, soon or after, you have to set the expectations like, “But hey, now this thing doesn’t stop. There’s another milestone and another milestone.” Even on the stuff we just did, this is a living design system, so if we learn new information that improves upon that, we’re going to change it.

I think some executives can think of like in design just seem like, “Okay, cool. So, you work on this for a couple months, and then we’re done, and it’s all good? Awesome.” I think it is important to set that expectation of like, “No, we have a milestone we’re going to hit, and you’re going to see some success from that. But then, this thing keeps going.” Setting that expectation early is crucial.

Join the world's best designers who use UXPin.

Sign up for a free trial.

Salesforce Lightning Design System: Insights from Kaelig Deloumeau-Prigent

Kaelig Deloumeau-Prigent is a Senior Designer on the Salesforce Lightning Design Systems team.

With years of experience in front-end design and development, Kaelig sat down with us to share his advice for building a design system. To learn more about the benefits and processes of design systems, download the free e-book Why Build a Design System?

How’d you join the design systems team at Salesforce?

Kaelig: That’s actually a pretty funny story. My wife moved to the U.S. to work at Apple. She’s American, but we lived in London for a while. I thought, “I might as well follow the wife.” I came to the valley to just visit her, and started talking to a lot of people here. Just about what they were doing.

For lunch one day, I meet with Gina and Steph. They’re talking to me about this thing they’ve been working on called The Lightning Design System. It was very early stages, at this point. Nothing too crazy in production. It was very promising.

I saw what they were looking at in terms of vision, and in terms of infrastructure, as well. It was awesome. I did not see Salesforce as a UX minded enterprise before. That totally changed my mind on how Salesforce is capable of doing UX.

I thought I’d love to be on that team. They were … It actually came to me as a discussion during lunch where they were like, “Wait, so you’re moving to the valley? That means you’re going to be looking for a job at some point.” It was very natural, and really good fit. I’ve been there for about a year and a half, now.

When you first joined the design systems team in 2015, what was the bulk of your work focused upon?

In the beginning, I was working, a little bit on the CSS. A lot of peer requests and the reviews revolves around nitty gritty details of the code and it was definitely a lot of time that was spent on looking at stuff that could be automated. I quickly started looking at opportunities to improve the process such as, just basic things like: linting or how can we better at continuous deployment. All the little things that were getting in the way of shipping really good CSS in the first place.

How was the design systems team structured when you joined?

It was very multi-disciplinary. The manager was the designer. His name was Chris. He was awesome. He left shortly after I joined but he was the glue between the design system’s team and the rest of the company, definitely. He was playing the role of the interface between us and the rest of the company.

Then there was Steph, who was the lead, and she’s still the lead by the way, on the CSS architecture.

Adam is the, been since the, kind of like the, almost since the beginning I guess, who has been working on Theo as well, I don’t know if you’ve heard of it. It’s a great tool for exploiting design tokens, we can talk about this later. And then he’s been one of the forces behind the code infrastructure of the stuff.

Brendon handles CSS, and has huge background as a creative director and just really good at turning code. Just building a lot of components.

Then there was Gina who is more on the design and evangelization side, and the, and kind of took into the whole thinking behind how we can integrate with design at scale. And we had an amazing graphic designer who came up with lots of the icons, tailor made for  Salesforce. He was the guy behind it. And I joined as a more, technical sort of guy after that.

When you first joined the team at Salesforce, what were some of the biggest challenges that you were facing?

The biggest challenge in a company, a large company like Salesforce is definitely to try to have great processes that are really fast and really efficient, while being part of a greater organization, which itself has its own processes, its own way of doing things that has been going on for the past eighteen years now. For me that’s the biggest challenge, because looking at the big picture and all the processed of all the teams that are going to consume to design system and trying to fit with is really challenging to me.

What were some of those processes that you had to modify or completely rebuild from the ground up?

Unfortunately not everyone is using NPM and just get it in general. So in general we have a lot of processes that revolve around our release cycle, which is three main releases a year. When you want to be releasing on a daily basis in terms of design systems so that you can catch errors and regressions as quickly as possible, it doesn’t necessarily fit with that greater goal of delivering features, major features, to customers three times a year. An example that I think Gina likes to take as well is: People keep asking us, “Hey I want an icon for my new feature.” And so it takes a little bit of time for us to build it and to ship it in the design system. But then the greater question is, “How do we make sure it gets to production and what is the process through which designers and engineers can sit together and know, where is my icon right now? Is it accessible in one release ahead of us, two releases ahead of us?” Because I don’t know if you’re familiar with our release schedule, but we are working on two to three releases at the same time. Knowing where all the assets are and what is available to you in the code is the type of challenges we are looking at.

On my side what I manage to do it automate as much as possible on our side of the platform. There’s a lot to do still. But that’s the kind of stuff we are looking at.

At Salesforce right now, where do the design system assets live?

The design system is a collection of multiple GitHub repositories itself. We have one source of truth in the end, which is, it’s a single source of truth, we have an internal portal where all the developers internally, and all the designers can go and collect the resources. Then if you’re more of a graphic designer or UX designer, you want to go to the design system to collect everything, so we are beta testing the internal tooling right now around this as well where we’d having something, like a desktop app, that would integrate really well with Sketch, with other software so that you don’t have to go to a webpage every time you want to look for an illustration, look for designer assets such as icons, most of the time.

I guess its multiple sources of truth, but we are trying to find, also, points of convergence where we could automate most of it. Such as, again icons, it’s a big deal. So that’s where we are at right now.

Where has the Lightning Design System evolved the most?

Definitely in terms of components.

When I arrived we mostly had UTT classes and forms, you know, basic components. And now we are seeing really really massive, really complicated components. High-quality components were definitely the thing that was most demanded across the company. We have multiple dozens of scrum teams working on features at the same time, so they are really demanding and they want stuff and fast. That’s the area where we have been growing the most and now we are looking at other areas of improvement as well, such as design guidelines, building better documentation in general.

You mentioned improving documentation as one of the goals. Could you expand on that a little bit?

One of the most important things in the design system is not necessarily the self-service side of it. It’s also understanding the thinking behind each design decision that was made, and sometimes one component is going to impact so many design decisions at once. Having some sort of peer guidelines on how to use it is great. And also, why this component was built like this, and what was the thinking, is also something we’re looking at.

Explaining some of the research findings, directly close to the components or, actually the design patterns that led to building this component the way it is. Accessibility as well, you probably notice, we don’t include JavaScript on the design system so we need to include peer guidelines for JavaScript developers on how to implement the design system components across multiple frameworks. And so, really good documentation is key to scaling that, kind of, best practices.

For a place like Salesforce, it really matters a lot.

What’s the process for updating the design system?

The public side of it is that you can simply go to the Open source project, and open any issue with a feature request. That’s the visible part of the iceberg because internally we have a slightly different process where … I don’t know if it’s very formalized at this point, I know we have different channels and we are trying to funnel everything through the same person, which then can direct their request to the right people. I’d say that it comes 50% from the designers who are working on the platform, and 50% from feature teams who would really like this little thing that they’ve been working on, and it’s not in their design system, and they’d really like it to be in there. It really depends, sometimes it’s more … Before something is shipped, sometimes its after something is shipped … I’m not sure there’s really formal process, I’d have to check with my team on that.

What goals do you have for the future of the design system?

Improving the collaboration model so that external and internal people even outside of the Designs System’s Team can add documentation themselves or add component even. We are looking into that right now. Not just small features or small tweaks, but whole features, sorry … Whole new components, whole new parts of the website.

Regression testing is a big deal for us. We are trying to improve the regression testing so that each who are contributing, you know you’re not breaking other people’s stuff. Because we have more than 500 components and states, it’s crucial that we have good testing behind it so that we limit the side effects. In general we keep looking at our architecture … There’s a lot of stuff going on on that side and you’re going to see that in the next few weeks if you’re careful about what we are going to be releasing. Pretty excited about that.

What does your release schedule look like for the design system?

The way we release right now is that we have internal releases that are actually happening every time there’s a comment. So we are pushing that to a staging area. And that staging area gets approved at some point. We have a lot of regression testing happening there. Every time someone is opening a poor request, there’s a lot of testing happening every time there’s a something merging to master, it’s pushed to all documentation, documentation side.

Once every week or two weeks we do releases to production in a … It’s not public yet … And then, how do I say it? Essentially what’s happening is that we are always working one release ahead of what’s public … What’s available to the public. For example, if I push a comment right now, it’s going to go into the next release. As soon as I tag it, I give it a version, like, I don’t know, 2.3.0 beta 7. We hand that to a team that’s handling all the CSS and asset management on the real big products. Then we can also spread it to our teams who are using NPM, simply.

There’s a lot of ways for us to push our changes and to release it, but … Then when we release to the public, it’s about 3 times year. Then the actual release is when there’s like a really big thing that needs to be fixed in production, that’s impacting our customers and developers on the outside. It’s kind of a weird release process, where we have to be in sync. We have to really be mindful of how teams are working internally. We have to stick to that process. We wish we could release more often, and I know Salesforce is doing more work on the continuous deployment, continuous integration, and better release management, so hopefully one day, pushing a comment will actually send it to the customer directly, instead of having to wait 3-6 months.

What you find most challenging aspect about working in a design system?

Good question. I think the fact that, again it’s a big company, and there’s a lot of processes going on, and its not always easy to be super agile in that kind of way. I think for somebody like me who’s been working in kind of, a loose type of workplace before, working in a very organized place like Salesforce can be a little bit challenging.

There’s a real schedule behind it, there’s a lot of thoughts put also on the vents that we’re giving and how our developer marketing team can show how to use our products. We have training material, as well, on our training platform. Every time we do a tweak, we have to be mindful of, is that going to impact the way people learn about the design system? I think that’s the most challenging. Having this huge amount of information applied to small details like how well are we doing CSS? How are we releasing CSS? All these little things need to … Take all of that into account.

What benefits have you seen from the design system?

Spreading best practices.

One thing is clear, is that your cannot hire experts on every team. It’s impossible. We couldn’t hire 70 front end experts and put one per team. That’s impossible. Seeing the quality of the front end increase at scale has been a huge win. We couldn’t have hopes better … Seriously, without the design system, I cannot even imagine how much time would have been spent trying to recreate the same patterns over and over across all of our teams. Also, with the type of quality we are expecting from them.

That’s been one of the wins, and more recently, we’ve seen a few really interesting wins. One of them is that really close to a major release last year, we decided to make huge changes to our navigation. What would have been, I would say, months to change, took 1 or 2 sprints. That was a huge win, and it demonstrated changing colors and changing a few things across multiple teams in just a few CSS changes. Proved to management and to the stakeholders that there’s huge value in that design system.

Another thing is that we’ve decreased the custom CSS from production. As this is happening, we see the amount of CSS served to our customer go down, which is great. It’s a really good win for us. It’s just less things to download for our customers, so faster pages.

What metrics do you use to evaluate the design system?

Reduction in CSS code and how much of each main screen of our application is using the design system. We are doing nice visuals for the execs to understand where … There’s the header, its all in the design system. There’s the page header, again, all in the design system. And then as you go down the page, a few things start to break out, where … So we paint some areas in green on a nice slide … The execs like a good presentation. We take a screenshot, we paint some green where the design system is and we start painting some red where it’s not using the design system. We’re showing them at this point last year, this is where we were at. It’s all red. And all of a sudden you look at the new page, its all green.

They know that thanks to that, in the future, if we do design changes, such as changing the content density, changing colors, making tweaks, teams won’t have to go back to their code and you don’t have to ask 70 teams to change that little bit of markup on the drop down. It’s just all in one place and so they see the … Instead of technical debt, it’s like, we’re making a bet on the future. We’re taking a loan on the … How do you put it? I’ve got to remember. I read some sort of a metaphor around technical debt that you can also do the inverse and make it technical investment and I think that’s one of those.

What lessons have you learned along the way?

A few things that I’ve personally encountered have mostly to do with, again, the overall process. Thinking you can change everything on day one.

Support is really hard. We get a lot of support requests from our open source, but also from internal customers, from so many different sources, and it’s really hard to keep track of everything and to be consistent in your support strategy. That’s something we are only starting to scratch the surface of, but I think we didn’t really have any process in place, and if somebody was going on a holiday, a full channel of support was not cared for, for like 2 weeks.

And then customers don’t like that. That’s one of the things that we’ve learned, that support is really important. As you’re building a product, you need to account for support in your overall strategy. That’s part of building a product. That’s a few of the challenges we’ve learned and … It’s been lots of really good wins mostly. I see them more as little hurdles that we’ve had along the way, but there’s not anything that was a huge realization of, Oh my god, why did we do that?

Actually, there’s one thing. Documentation is really important. Not only the external documentation, but in the code. Looking at your own code 6 months later, especially when it comes to CSS, it’s kind of hard. You want to document your weird decisions in your code. In your CSS because you’re going to have to go back to it, and at some point you’ll be like, hmm what was I thinking? And then they’re touching it again and you’re like .. You know you have to keep that code in for months and months because you’re afraid it might break somebody’s implementation and so … Yeah, document your work a lot.

Nathan Curtis has mentioned that working on a design system is like working on a product that serves multiple products. Would you say that statement rings true?

I think Salesforce is the pinnacle of that quote. I think that Nathan Curtis totally nailed it on this article and it’s exactly what the Salesforce design system’s team is doing. It’s definitely building a product, a set of tools around it, a set of contribution guidelines … It’s a really fully pledged product. I think we are more than 20 people working on this right now. It is definitely that.

There’s multiple teams. There’s a team that’s more looking after the CSS and the release process, more UX engineering based. There’s a team who’s building prototypes that then can inform the design system, and there’s the team that’s more on the creative side. I think there’s another team, which is essentially looking after the patterns and the overall design strategy, and the more lower-level, as in, what are the really deep principles that drive each piece of the interface. All the teams aren’t necessarily working 100% on the design system, and their work kind of overlaps at some point. We have a team who’s mostly caring for building the website whereas another team is going to be building, more icons or total, it’s around 20 , 25 I would say.

What advice would you give to someone about to build their first design system?

Start small. That’s what a lot of people are doing. Then get buy in as fast as possible. It’s really really important to get executive buy in because if it doesn’t come from the top, I don’t think it’s going to work. To me that’s the hardest part of building a design system in a company is to tailor that narrative to your business problem, and then deliver something that follows that narrative. I think it’s really really the crucial point and really hard to do because designers and developers are not necessarily good sales people.

I think it all started with people like Gina, who had the vision, who had the ideas, and told that vision to somebody who could speak to even higher instances. That worked out because the designs system got funding and actually we built a team around it.

It wouldn’t have happened if executive buy-in was not part of the game.

Join the world's best designers who use UXPin.

Sign up for a free trial.

Agile UX Virtual Summit 2017: Join 30,000+ registrants in the largest design event (online and free)

There’s lots of great design conferences, but not everyone has the time or budget to attend them.

So back in late 2016, we asked ourselves “why not create an online UX conference, sponsor it, and make it free for the world?” It was a crazy idea and a lot of work. But the idea took off — Enterprise UX Virtual Summit 2017 set a world record in February this year with 32K registrants and 11K attendees. We were blown away.

It was so popular that we figured it was worth doing again. This time, we’d tackle the challenge of Agile UX. Just like last time, we hand-picked designers and design leaders to present their case studies.

Spanning June 13–16 2017, Agile UX Virtual Summit features speakers from IBM, Fjord, Bloomberg, Hubspot, and Google Ventures.

Across four days, you’ll get advice from 17 speakers like:

  • John Zeratsky — Design Partner at Google Ventures and co-author of “Sprint: How to Solve Problems and Test Ideas in 5 Days”
  • Indi Young — Cofounder of Adaptive Path and author of “Practical Empathy” and “Mental Models”
  • Peter Merholz — VP Design at Snagajob and author of “Org Design for Modern Orgs”
  • Josh Seiden — Designer at Fifty2.co and co-author of “Lean UX”
  • Essi Salonen — UX Designer at Fjord
  • Erin Sanders Muntzert — Senior User Researcher at Google
  • Vera Rhoads — Senior UX Manager at IBM
  • Carol Smith — Senior UX Manager at IBM

Topics include: design sprints, Agile user research, Lean UX for enterprises, story mapping, product strategy, UX documentation, and more.
We’re excited to host tens of thousands of folks from around the world again. And we’d love to see you there.
Register now for free

Smashing Conference San Francisco 2017

As guest authors for Smashing Magazine, it only makes sense we’re excited about their upcoming conference in San Francisco.

Their conference is an in-person extension of the practical content we love on their site. Based on their speaker lineup and topics, the multidisciplinary conference tears apart UX and front-end development case studies to explore:

  • How to solve problems
  • Identifying failed ideas
  • Learning why certain ideas failed
  • How to arrive at better decisions

SmashingConf in Barcelona 2016

An image from the most recent SmashingConf in Barcelona 2016. Image Credit: Alessio Carone

What’s it about?

A fan of substance over style, the SmashingConf experience is less like navigating a convention center and more like walking into a cozy place around the corner.

Smashing Conference 2016

Smashing Conference 2016

They’re bringing together experienced speakers to share practical front-end and UX techniques and the pitfalls they ran into, lessons learned, and efficient workflows. Picture an intimate, hands-on conference experience, with lots of learning, sharing and networking along the way.

This year’s topics include:

  • Design systems
  • Data visualization
  • Progressive and responsive web design
  • Measuring user experience
  • CSS and Flexbox techniques

When is it?

April 4-5 2017.

Who’s speaking?

This year’s 15 speakers include:

  • Nathan Curtis – Expert in design systems and author of “Modular Web Design”
  • Sarah Drasner – Manager of UX and Engineering at Trulia
  • Rachel Andrew – Front and back-end developer and A List Apart columnist
  • Erika Hall – Co-founder of Mule Design (with Mike Monteiro) and author of “Just Enough Research”
  • Jason Grisby – Web designer and author of O’Reilly’s “Head-First Web Design”
  • Christian Holst – Co-founder of Baymard Institute, a center for large-scale UX studies

Where is it?

In San Francisco at the Palace of Fine Arts, right off the bay (fun fact: the UXPin office is just an hour south).

San Francisco, Palace of Fine Arts

Web Design Trends 2017: The Year of Material Design Lite

Without a doubt, touches of Material Design are the must-have aesthetic of the year.

Google’s Android-based design scheme may have started as a mobile device interface, but has exploded in popularity and usage, regardless of device or platform.

It’s a natural continuation of the biggest trend in design during the past few years: flat design. Yet, Material does something flat never could, it adds just enough embellishment to enhance usability. Instead of stripping everything away to favor visual appeal, at the root of Material Design is usability.

What’s Material Design Lite?

Material Design Lite Android webdesign

Photo credit: Android

Material Design Lite, or MDL, is the next phase of Material Design. It takes the ideas and optimizes them for all devices. MDL has been crafted to include guidelines, components, and an overall framework with templates and tools that help nearly every designer craft an MDL website with minimal prior knowledge up front.

MDL essentially makes the concept accessible to everyone in a quick and easy way.

While MDL may be a variant of “classic” Material Design, it is in no way a lesser version. Most sites designed with MDL are robust, easy to use, and visually pleasing.

The idea of MDL goes back to the mission of Material Design as a whole: “Develop a single underlying system that allows for a unified experience across platforms and device sizes. Mobile precepts are fundamental, but touch, voice, mouse, and keyboard are all first-class input methods.”

If that weren’t enough, every part of MDL is open source. Rules, templates, best practices, and code snippets are available on the MDL website or GitHub.

Join the world's best designers who use UXPin.

Sign up for a free trial.

The Principles of Physics

The principles of Physics in webdesign

Photo credit: Rumchata

The foundations of this style’s aesthetic come from physics. The designer should aim to create something that looks and functions like it would (or could) in the physical world.

This simple concept is what supports the innate usability of Material. Consider all of the design tools that rely on this idea—layering, cards, motion, color.

MDF webdesign

Photo credit: MDF

Best webdesign examples

Photo credit: Serio Verify

To understand how to create these elements in a way that looks truly Material, let’s think back to physics class, for a moment.

  • Varying x and y dimensions are recommended, but all elements should have a uniform thickness.
  • Shadows should fall naturally on the z-axis, seemingly from a natural light source.
  • Content can appear on any plane, in any color or shape.
  • Material components are solid and have no transparencies.
  • Each space is limited to a single component; they can’t overlap. Layering is only acceptable with backgrounds and photo elements, not singular components.
  • Components can shrink and expand, but not bend or break. They have a fluidity to their movements.
  • Components can split or be combined.
  • Motion can occur on any axis and should be dictated by user interaction.

Mix and Match Components

Mixed components in webdesign

Photo credit: wrk.

Google developers simple design

Photo credit: Google Developers

MDL is packed with user-friendly tools to help start the design process. While the visual design is primarily what you see, what makes Material Design Lite different is in the backbone.

MDL is not JavaScript-based; it is designed to work on all devices, degrade in older browsers, and provide cross-platform accessibility. You don’t necessarily need to know how it works, but there is one vital takeaway you should remember: MDL will work pretty much everywhere. And that’s by design.

The easiest way to start with MDL is to pick a template. Each template (there are six to choose from) comes with everything you need for the design, including the components and color palettes. But the beauty of MDL is that you can customize as much as you like. The templates are merely a starting point.

In addition to templates, MDL has a massive component library that lets you mix and match pieces to create something uniquely yours. (You can grab just code snippets for only the components you like to keep your website lightweight.)

While these parts are a lighter, easier to manage version of Material, all of the basic elements are the same, including typefaces (Roboto), layer styles and elements, and color palettes. Almost any element can be added to a design or removed. You can even include elements of MDL in a site that’s not fully Material if you want to experiment.

Material Color Palettes

One of the most visual aspects of MDL are the associated color palettes. Material projects are often bright and bold in color. Hues are deeply saturated and color combinations can be a little unexpected.

Material Color Palettes

Photo credit: Get MDL Custom CSS Theme Builder

Material color is often based on a palette that consists of a primary color and one accent. (You’ll want to choose wisely.)

Dropbox Business webdesign

Photo credit: Dropbox Business

Dropbox Business is a classic example of a website that adopts design concepts early, yet maintains brand identity. Luckily, their branded blue is perfect for Material. Here, the site uses a single color palette with black and white to communicate. (This is quite common with MDL, as brands work to maintain an identity while using the style.)

Color palettes in MDL

Photo credit: Pumperl gsund

The site for Pumperl gsund takes the opposite approach and goes all-in with two bright colors. Note again how color is used against a mostly minimal background, with black and white for everything else.

usign bold colors in webdesign

Photo credit: Fila

While MDL projects can feature big, bold color throughout (such as Fila, above), this can be tricky to pull off with finesse. You need just the right content to make it work well. In this case, Fila had the perfect combination of elements to go big with color thanks to a colorful athletic clothing line.

Conclusion

Material Design Lite is a more usable, more flexible version of Material Design and one that you can implement in whole or in part for almost any website design. It offers overall functionality, focus on usability, and design known for clean lines and organization.

For more UI advice from analyzing 61 examples, download the free e-book Web Design Trends 2017.

Join the world's best designers who use UXPin.

Sign up for a free trial.

Rosenfeld Media’s 2017 Enterprise UX Conference

If you watched any of the webinars from the 2017 Enterprise UX Virtual Summit, you need to attend Rosenfeld Media’s in-person conference.

We’ve sponsored it 3 years running because the topics, speakers, and attendees are unmatched in quality. Speakers and attendees come from companies like Capital One, Ford, Google, IBM, Citrix, Salesforce, SAP, USAA, and more.

EUX 2017 will be held this year in San Francisco from June 7-9. They’re expecting over 600 senior-level practitioners and leaders to attend.

Themes

The event is broken out into mini-conferences around four themes:

  • Understanding how complexity, scale, and lack of control shakes up expectations of what good design means in the enterprise
  • Developing a strong vision and leading an interdisciplinary team to execute it well
  • Breaking through organizational silos and political barriers for better collaboration
  • Creating an invaluable design practice 

Speakers

Their 27 speakers and workshop leaders include:

Elizabeth Churchill – Director of User Experience, Google

Laura Klein – Principal at UsersKnow

Peter Merholz – VP of Design, Snagajob

Mark Templeton – former President and CEO, Citrix Systems, Inc

Gretchen Anderson – Head of Design, Pacific Gas & Electric

Kristin Skinner – Managing Director, Adaptive Path/ Capital One

Sam Yen – Head of Design at SAP

Phillip Hunter – UX Director, Amazon Alexa

Kim Lenox – Director of Product Design, Linkedin

Venue

A great event needs a great venue. This year, the conference is coming west to the Innovation Hangar inside the Palace of Fine Arts SF.

44 Enterprise UX Resources Worth Bookmarking

Enterprise UX can feel overwhelming. These resources shorten the learning curve for designing business products and internal tools.

As we prepare for the free Enterprise UX Virtual Summit next month (20 speakers), let’s recap the most actionable resources.

 

Enterprise UX Trends

1. The Future of Enterprise UX (e-book)

Written by Asana’s Head of Design, this 47-page guide explores the principles and methods for modern enterprise design. Full of visual case studies from Intuit and Asana. 

2. The State of Enterprise UX (video)

Free webinar explores the state of the industry based on two years of data. Lou Rosenfeld, Dave Malouf, and Uday Gajendar explore trends observed in the annual Enterprise UX conference.

3. Is Dev Ops the Future of Design?

A quick look at the intersection of design and development in enterprises.

4. Scaling Design Thinking in the Enterprise 

A realistic exploration of how to survive the “trough of disillusionment” after introducing design thinking. 

5. Material Design for Enterprise Apps

Case study of refreshing enterprise software with Material Design principles. 

6. Making Sense of Enterprise UX (video)

John Maeda explores the history of future of enterprise UX. 

7. Everything Is About to Change: Software as Material (video)

Greg Petroff explains the new materiality of software and the opportunities for UX people to increase their impact.

 

Improving UX Process

8. Designing a Sustainable Enterprise UX Process (video)

Know how to design a long-term UX process based on a 4-year case study in an organization with 5000+ employees.

9. Lean UX in the Enterprise (video)

A step-by-step case study packed with best practices. Based on a government UX project.

10. UX for the Enterprise

Jordan Koschei explains how he’s adapted his workflow and methods for enterprise UX. 

11. 5 Reasons Why Working in the Enterprise Doesn’t Suck

Greg Damm explores the unexpected areas of opportunity for enterprise designers. 

12. 5 Ways to Adapt UX Thinking for the Enterprise

Know how to modify traditional UX methods for the realities of the enterprise.

13.The Agile UX Survival Guide (e-book)

Written by enterprise product manager Germaine Satia, this 40+ page guide is a crash course on Agile UX workflows. 

14. The Project Guide to Enterprise Product Design (e-book)

Distilled from hours of interviews with enterprise teams, this guide presents in-depth case studies from cloud solutions, mobile, government, and healthcare sectors.

15. How to Create an Enterprise UX Strategy

See the four steps to creating enterprise UX strategies. 

16. Why Enterprise Product Managers Should Choose MVE Over MVP

Know how to conduct a minimum viable experiment to maximize learning in the enterprise. 

17. The Wicked Craft of Enterprise UX

Uday Gajendar explains how the definition and practice of “craft” changes in the enterprise. 

18. Collaborative Design for Enterprise Teams (video)

Learn useful tactics based on Daniel Castro’s experience building and growing the UX discipline at Sumo Logic.

19. The 7 Biggest Enterprise UX Challenges (And Solutions)

See how experienced designers are overcoming the challenges of enterprise UX. 

 

Building Design Culture

20. Spreading Design Thinking in Organizations (video)

Based on her 5 years as a UX leader at Citrix, Julie Baher explains how to drive better product design through cultural transformation.

21. Evangelizing UX: How Design Leaders Get Buy-in 

Dave Malouf explores evangelizing tactics he’s found useful over his 20+ year UX career. 

22. Evangelizing UX Across an Entire Organization

An insightful roundtable discussion with 8 UX experts. 

23. Corporate UX Maturity Stages

A must-read for assessing how to introduce and spread design in an organization. 

 

Improving Usability

24. Enterprise UX and the Olive Garden

One of the most original and insightful articles on enterprise design principles. 

25. Eliminating UX Debt (e-book)

Written by Jack Moffett, see how to classify, spot, address, and avoid UX gaps.

26. B2B Product UX

Peter Zalman explores the differences in the content and scale of design work in B2B products vs. B2C products.

27. Getting Enterprise UX Mobile Right 

A unique perspective on mobile service design for the enterprise. 

28. How to Make an Intuitive Data Display

A crash course on UI principles for business intelligence products. 

 

Conducting User Research

29. Practical User Research for Enterprise UX (e-book)

Written by Rian van der Merwe, this 40-page guide explains how to get buy-in, conduct, and document user research in the enterprise. 

30. Persona Misconceptions

See how to adapt this common UX deliverable for enterprise use. 

31. Enterprise User Research 

Know the most efficient methods of user research in the enterprise. 

 

Design Systems

32. Creating a Design System: A Practitioner Case Study (video)

Step-by-step case study of creating an internal design system presented by Marcin Treder, cofounder of UXPin.

33. Creating and Scaling Enterprise Design Systems (video)

A case study on improving UX consistency and efficiency at Bottomline Technologies. 

34. Styleguides.io

A master collection of pattern libraries and design systems from around the world. 

35. Building a Visual Language

A sneak peek inside Airbnb’s design system team and processes. 

36. Promoting a Design System Across Your Product

Nathan Curtis explains best practices for creating and adopting design systems. 

37. The Salesforce Team Model for Scaling a Design System

 See how Salesforce creates and maintains their robust Lightning Design System. 

38. Beyond the Toolkit: Spreading a System Across People and Product (video)

Know how to implement a design system that allows teams to improve creativity, efficiency, and collaboration.

39. Object-Oriented UX 

See how to create a component-based design system. Based on the case study of designing CNN’s election night user experience. 

40. The Language of Modular Design 

A step-by-step guide for creating a Lego-like design system. 

41. Design Ops at Airbnb 

An inside look at how the Airbnb DesignOps team manages design at scale. 

42. Scaling UX in Organizations (video)

Free webinar that explains a 4-step framework for scaling UX. Based on the experience of Airbnb Design Director Jason Culbertson. 

43. GE’s Predix Design System

A case study exploring how GE created a design system with Atomic Design. 

44. Creating a Living Style Guide: A Case Study 

A detailed look at how FamilySearch documents styles and patterns and synchronizes UX with development. 

 

Bonus: Free E-book Bundle

Looking for more enterprise UX advice from practitioners?

Download our free Enterprise UX Best Practices E-book Bundle. Get 125 pages of advice based on real enterprise UX case studies.

The World’s Largest UX Event: Enterprise UX Virtual Summit 2017

We are in the midst of the enterprise product renaissance.

Established organizations are finally seeing the value of UX. But enterprise design isn’t as easy as just hiring a bunch of designers and calling it a day.

How do you create a sustainable design culture? How do you overcome years of technical debt and design debt? How do you adapt UX principles for business products?

After months of planning, we’re beyond excited to announce that our first virtual conference is now open to registration. As the name suggests, Enterprise UX Virtual Summit 2017 (Feb. 14-17) gathers top practitioners and leaders to share best practices for designing in the enterprise. We’ve invited folks from companies like IBM, SAP, Google, HP Enterprise, Asana, Core Logic, and others.

It’s the first online event of its size and scale. The topics focus on challenges faced by senior practitioners and UX leaders. Every session draws from real case studies – no fluff allowed.

Get actionable advice from 15 live webinars. Network with thousands of peers in the Slack lobby. Join for free from anywhere in the world.

Topics include scaling UX, creating design systems, standardizing UX process, improving enterprise usability, evangelizing design culture, overcoming legacy technology, and more.

The 20 speakers include:

  • Irene Au – Design Partner at Khosla Ventures
  • Jeff Veen – Design Partner at True Ventures
  • Leslie Witt – Head of UX for Small Business Products at Intuit
  • Lou Rosenfeld – Information architecture legend and founder of Rosenfeld Media
  • Amanda Linden – Head of Design at Asana
  • Andrew Sandler – Director of Product Design at Groupon Merchant

See you there! And feel free to invite your friends and  coworkers. Let’s continue to evolve enterprise UX together.

Register now for free

Free UX Process and Documentation Kit

Standardizing a UX process is no easy task.

First, you need to identify activities that drive the most insights across disciplines. Then you need to find or create the necessary templates and start tweaking to fit your team.

Our free UX Process and Documentation Kit saves time by templatizing UX activities required for successful products. Based on 7 years of experimenting, the kit focuses on five steps in the lean UX process:

1. Lean Personas

screen-shot-2017-01-04-at-3-01-07-pm

2. UX Competitive Analysis

Separated into three sections for a complete analysis:

  • Features
  • Value
  • UX Heuristics

screen-shot-2017-01-04-at-3-05-11-pm

3. User Interviews

Includes four sections to cover the whole process:

  • Scheduling user interviews
  • 62 questions for user interviews
  • Documenting results for multiple interviewees
  • Top 14 resources for improving user interviews

screen-shot-2017-01-04-at-3-13-16-pm

4. UX Strategy

Created by renowned UX consultant and author Robert Hoekman Jr., this lean 1-pager aligns your team on the purpose, design language, and intended outcomes for your product.

screen-shot-2017-01-04-at-3-16-29-pm

5. Usability Testing

Includes five separate templates for comprehensive testing:

  • Permission to record
  • Usability testing checklist
  • Usability testing script
  • Usability testing notes
  • Usability testing report summary

All templates are ready to download for customizing. Hope this helps your process!

Download kit now