When building a digital product, the contribution of designers and developers is equally important. Sadly, the handoff culture nurtures a predominantly dysfunctional relationship between the two teams, and the lack of communication can lead to poor results. The ones to pay the price for these feuds are usually the user, the client, or both. In an ideal world, the two teams could look past organizational models and simply work together.
The situation is so out of hand that Google launched a series of interviews titled "Designer vs. Developer" back in 2017 in order to try and guide teams towards efficient collaboration. Unsurprisingly, the comments on these videos range from cynical remarks to testimonials of defeat.
Because usability cannot exist without adequate software development to back it and good programming is useless in the absence of good design, here is the ultimate guide to how designers and developers should support one another:
1. Remember who you're doing this for
The product is meant for a specific user base. Keeping those people at the heart of the development process helps both teams set their egos aside and focus on playing the long game. Factoring the user into cross-team decisions will help everyone take changes less personally.
2. Respect each other
It's important for both teams to understand each other's work and their place within the project. Ideally, an explanatory session should be held before designers and developers begin working together. Each team should have a deep understanding of their own processes in order to be able to adequately explain them to the other.
A healthy work environment fosters the confidence and creativity needed to make amazing digital products. Simply handing over a PDF of the design or requesting changes off the bat is not a good way to begin any working relationship. Respect one another's craft. Take note of each other's experience and expertise in order to create the best possible version of the product.
3. Have an inclusive outlook
Involving the development team in user testing practices, or simply showing them the findings, will help them take ownership of the project from earlier on. If they lack the time to join in on user interviews, give them the option to look through session recordings or a summary of results. Any user feedback should be shared with both teams. This helps everyone stay focused on what truly matters, which is user satisfaction.
Additionally, designing without any consideration for technical constraints is bound to fuel resentment among the two teams. Collaborative work can help identify the limits of technical feasibility earlier on. Designers and developers can find creative workarounds together. This helps keep the project within its time and budget constraints and saves the client money in the long run.
4. Make communication a habit
Maybe you're working from home, or you don't work from the same office. Figure out which communication methods work best, as some people have clear preferences. It's very important that both teams set time aside in order to come together and discuss their progress.
Start your collaborative journey with a video call to get to know one another. When people are at the beginning of their working relationship, video calls are preferable to written communication. Time wasted inferring the meaning of an e-mail or a reply on Slack can be better spent developing solutions together.
5. Show your work regularly
In order for adjustments to be made in time, it is essential to have an iterative work process in place. Both teams should contribute and provide feedback on each other's work. Sharing work with the other team as soon as a design or development stage is completed supports the iterative process.
Use collaborative tools in order to leave notes and feedback. Figma, Zeplin, and live staging tools like GitHub are extremely useful. Additionally, team members can also help each other visualize the problem by using whiteboard tools.
Designers should aim to be as specific as possible when it comes to how certain elements of the design are intended to act. High-fidelity prototypes and interactive animations should give the development team a clear idea of how everything is supposed to work.
6. Time change requests adequately
Being able to see each other's work as it progresses can inspire team members to request changes. While human creativity is limitless, each project has specific time and budget constraints. People's willingness to make changes depends on which stage of the process they're in.
It can be difficult for someone who is not a specialist in a certain field to correctly estimate how long a change will take. This is why having a conversation about the change can salvage a working relationship rather than allowing it to be ruined. Both teams should learn to absorb small changes without having to delay delivery or generate additional costs.
7. Learn each other's language
There is a professional language barrier between designers and developers. Designers tend to speak about their work in qualitative terms, while developers are more inclined to view it quantitatively. In order to move past biases, both sides need to be open to learning about the other's language, tools, and methods.
There's been an ongoing debate about whether designers should learn how to code, and more recently, during Config 2021, Mina Bach also raised the question "Should Devs Design?". Like in any partnership, things work smoothly if each side has an in-depth understanding of the other. Designers benefit from learning a bit of CSS, Java, and browser DevTools, while developers could take part in user research and brainstorming sessions more often, even if they're just there to listen in.
While it might seem overwhelming at first glance, the collaborative process between developers and designers largely relies on respect, efficient communication, transparency, and sufficient knowledge of the other team's practices.
To foster a healthy working culture and launch top-of-the-line digital products, the two teams should get to know each other. While this might be difficult to achieve when outsourcing development or design services, companies should strive to bring the two teams closer together.
Nordlogic Software specializes in high-end development services. While we handle simple designs ourselves, when we need elaborate UX & UI for our products, we call on our long-term partner, Creative Navy UX Agency. During the many years of collaboration, our teams have learned to work as one, and this shows in the quality they deliver every single time.