Chapter 10 – Make Developers’ Lives Easier

Chapter 10

Make Developers’ Lives Easier

The most fundamental problem in software development is complexity.
There is only one basic way of dealing with complexity: divide and conquer.
~Bjarne Stroustrup

With the rise of “Design Thinking” and “Design is the how the thing works” concepts, designers can be forgiven for thinking that developers are serving them. They are the ones who must accept your work and make it so because you know best. You understand the requirements, and you understand the user; therefore, it’s by your guiding hand the team will arrive at success! However, your projects and your career can be greatly enhanced by flipping this thinking: you should serve the developers.

Yes, the users are the most important. But if nothing gets built, then they will never be helped! If things are not built in an efficient, fast, and responsive manner, then the users will not be well served. If delivering for your users is the most important thing, then developers are the only vehicle to do so and must be thought of accordingly.

The same strain we endure as designers to empathize with the end user must be extended to empathize with the developer. Understand their struggles, their requirements, and their desire to build amazing things.

Imagine a work scenario where serving the developers produces efficient code; it gets built faster and iterated on sooner; and it adheres to standards that allow things to scale. Imagine you understanding their trials and mitigating any issue you can within your control to contribute to the team. Imagine the developers coming to appreciate the effort you put in to help them. As a result, they want to repay that kindness by putting in the extra effort on your important causes.

This is the scenario that unfolds when you make the developers’ lives easier. By focusing your care and empathy toward the team that will build the vision, you’ll cement your reputation, build better designs, create better software for your users, and help boost your career.

Achieving this does not need to be drudgery or foolish “yes sir” activities. Rather, it’s focusing on the items within your circle of influence that can serve the developers, the team, and everyone’s goals.

How Can You Reduce Their Work?

This isn’t to say you compromise the user’s experience or throw away necessary requirements. But perhaps if you removed this floating element, or had this card show up here, you could save three weeks of development time at the start. If a user interaction that you feel is important gets pushed to the next sprint, perhaps you’ll help deployment go out smoothly, for example.

Work with developers to find compromises that will get better work done in a quicker timeframe.

Ensure They Have All the Designs, Assets, and User Flows Available in an Easy-to-Understand Format

You could navigate your designs in your sleep, but that doesn’t mean everyone can. Much like you’d think through the experience of your end user, think through the consumption of your designs by your team.

Is every state, screen, asset, and explanation readily available for them to begin? Are designs linked up to stories or feature lists to get a visual understanding of the end point? Are images output and prepared in the format the team uses? Can you implement anything in code (SVG, CSS, or otherwise) that will assist them?

Go the extra mile on delivering for your team so they are set up for success.

Help with Testing

Don’t submit your layout and slam your laptop closed. If the design work is done, roll up your sleeves and help with whatever else you can. You as the designer are particularly well suited to help with testing software as you so thoroughly understand the end user’s perspective.

You are also removed from the code and do not know how it was strung together. This separation is incredibly valuable as your fresh eyes will not avoid traps or pitfalls of the output. You’ll press everything in creative orders and uncover untold bugs that would not be found by those building it.

Plus, with your intimate understanding of what it is supposed to look like, the feelings the assignment is meant to evoke, and who it was built for, you’ll approach the testing with a vigor unavailable to those who built it. Testing is never a joyous task, but it’s one you can gain a lot of credibility in helping with and provide profound value.

Stay Until the Deployment Is Done

See chapter 9, Stay Late with Developers, for the full concept, but it’s important enough to cover again here.

There has never been an instance when staying with the developers as they fight through a deployment is not appreciated.

Often, a designer will move the last pixel, output the last PNG, then pack up and leave for the night. Only when they arrive fresh the next morning do they find out how the deployment of the latest version went.

If you are ever working in a situation where you’re familiar with the team building and deploying a solution, stay with them until it’s done and live.

There may be absolutely nothing you can do, but the moral support goes a long way. You are the one who crafted the layouts and experience, the “idea” the team is fighting to make a reality. The least you could do is be by their side and provide whatever you can to the effort. It goes a long way for them to see you understand their struggle and know that you are not going to abandon them. Here, all the other points come in handy: reducing their work (is there a late-night change you can make to help the deploy?), ensuring they have everything they need, making sure that the instructions are perfectly clear, and, of course, helping with testing.

Beyond it being the right thing to do, it’s worth mentioning again that this may be one of the greatest things you can do to endear yourself to your team and help your career (as to why that’s so important, see chapter 11, Developers Will Get You More Jobs Than Designers).

They are your teammates and your vehicle to deliver the best possible design to your users. Make developers’ lives easier.

What I’m Not Saying

  • You are to bend to every developer’s whim.
  • You should serve the developers above all else.
  • Developers will dictate what you can or cannot do.
  • Always choose a developer over a user.
  • You have to always stay late and be a full-time tester.

What I Am Saying

  • Developers are key to getting your designs delivered.
  • They are your equal teammates, all striving for the same success.
  • You should serve developers as you would a client.
  • You should put in the effort to ensure everything you output is clear, available, and reasonable within technology and deadlines.
  • Developers are important to your career (see next chapter).
Trevor Alexander

Trevor Alexander has been an active designer in the tech industry for over sixteen years. During that time he has been a part of three successfully sold start-ups and has had responsibilities ranging from solitary designer, to design lead, to VP of Product. Trevor has had the pleasure of working with, hiring, and managing many designers during the course of his career.

Recent Posts

Chapter 19 – Have an Honest Conversation About What You Want

“Your time is limited, so don’t waste it living someone else’s life. Don’t be trapped…

2 years ago

Chapter 18 – Output Is More Important Than Process

Thinking is easy, acting is difficult, and to put one's thoughts into action is the…

2 years ago

Chapter 17 – Don’t Build Yourself Based on an App, OS, or Design System

Technology and tools are useful and powerful when they are your servant and not your…

2 years ago

Chapter 16 – You Need a Beautiful and Meaningful Portfolio

Bad design is like wearing a rumpled suit. It doesn’t mean you’re a bad person,but…

2 years ago

Chapter 15 – The Best Isn’t Always the Best

Be stubborn on vision but flexible on details.~Jeff Bezos You will sometimes know deep in…

2 years ago

Chapter 14 – Don’t Let Details Get in the Way of the Big Picture

Focus on the excitement and it will lead you through the obstacles. ~Piya Sorcar There…

2 years ago