Eliminating the Gap Between Design and Development
5 min read
Digital product development is a challenge. It takes combined effort between creative and technical people. For that to work, you need the right people. You know you need developers. They’re the brains behind making your product function. What about design? There are a few super-talented developer/designers who can conquer the whole project, but chances are, you’ll want dedicated designers. So your team is comprised of two types of thinkers with two distinct roles. It’s no secret that developers and designers think very differently, and striking a cohesive workflow isn’t always easy. When a project transitions from design to development (dev), things can go awry. The design team comes up with a product design, and when it’s implemented, the important details and more complex interactions get left out. Designers feel frustrated that the end product isn’t as polished, and developers are frustrated when design submissions are more technically complex than what is justified.
This divide is coined “the gap” between design and dev. We’ll compare practices in which teams fail to work together to bridge that gap to those which maintain healthy design/dev collaboration.
Design and Development in Silos
Sometimes in life, going it alone is admirable. Sometimes pressing on, even if no one is along with you, is thought to be courageous. App development is not one of those times. Designers need developers, and developers need designers—and they need to be in regular communication, or both teams will be left scratching their heads.
Designer: I wonder if this is even possible…
Developer: What on earth did the designer intend here?
Without planned collaboration, teams are tempted to make assumptions rather than delay progress by asking for clarification.
What’s wrong with designing without developers?
Designing without input from a developer, especially for an existing system, is like flying blind. A developer has valuable insights about the current capabilities of the system. They can educate designers on the level of difficulty to add desired features, which gives them a better handle on the cost to build vs. value to the user. They may even be able to suggest features that a designer didn’t know was possible.
Additionally, developers are great at poking holes in design assumptions. It’s their job to think through every scenario. Catching flaws up front prevents a designer from going forward with a design that simply won’t work.
What’s wrong with developing without designers?
Developing without designer guidance is challenging because static mockups don’t always translate perfectly to the platform. It takes some design expertise to make sure the integrity of the hi-fidelity UI (type, spacing, sizing, color, etc.) and UX design is retained.
It’s not universal, but developers are often focused on things like performance or whether a system is functional and free of errors in the code. A developer may think something is “good enough” because the user can accomplish their task. Good UX designers push developers to take things further…to make sure the product reaches the level of quality the user deserves. They work to push the burden of complexity on the developers rather than on the user.
Design and Development Working Together
When dev and design teams collaborate, they each have access to expertise in both design and dev. As a result, your developers will become more design-savvy, and your designers will become more development-savvy. It’s a win/win.
What does collaboration between a designer and a developer look like?
Collaboration doesn’t mean a developer has to breathe down the designer’s neck as they iterate concepts. Rather, there are key points in a project timeline when you can maximize the benefits of discussion and combined decision making.
Design collaboration:
- Before design work begins, designers and developers should discuss the requirements and come to mutual agreement on the product scope.
- Designers should ask for input from developers if they’re going to deviate from basic/existing UI components or the framework.
- A designer shouldn’t just slide completed designs under the door. They should talk through them, document them, and make themselves available to explain and revise them.
Development collaboration:
When UI implementation issues arise, consult designer’s feedback for direction. Try things in the development environment together to see what works. It will solve the immediate problem, and it will be a lesson learned for the designer.
If development can’t execute the design due to time constraints, a discussion should take place with the designer to reach a simpler, more feasible solution.
Once screens are completed, reconvene with designers to look for areas which need polishing.
Meaning in Ownership
Involving the teams in ongoing product decisions has more benefits than just sharing expertise. Everyone will feel a greater sense of ownership. When people feel like they own their work, they’re far more likely to put in the extra effort needed to put out an exceptional product.
When developers have input into what they are building, their work feels more meaningful. When they’ve contributed to the design process, it’s not about building something for someone else. They’ll want to do a great job of matching the designs for their app…and then designers can rejoice when their designs (be it with a little developer input) go live.
Collaborating with people from different backgrounds requires mutual respect. Remember that a successful product cannot just be one of great design, nor can it just be one of great development. Both components are vital to creating an app with a great user experience. When design and dev are working together to solve problems, everyone wins. Designers can proudly say “what we developed” and developers can confidently say “what we designed”.