Table of contents
Sometimes, amazing design ideas can turn into not-so-great products. Designers start out with a convenient and stylish solution, spend hours polishing it, then hand it on to the development team, and it turns out that there is no way to make that design a real product. Everyone ends up in a rather pessimistic mood: designers are frustrated because their ideas are not implemented properly, developers are angrily trying to find a way to make everything work, clients are unsatisfied because of the long and difficult process.
Poor designer-developer communication can result in numerous project issues, such as:
- Long work on designs that are simply impossible to put into effect
- The final result does not match the designer’s idea and the client’s expectations
- Missed deadlines and more time spent on the project
It might seem like the solution to those issues lies on the surface — just make development and design collaboration more productive. Easier said than done. Often, it is quite challenging to find a way to streamline the collaboration in a way that suits both sides. Let’s discuss three practices that might help with this task.
Three valuable practices for an effective design-development collaboration
1. Organize a proper workflow
In many cases, designers just send the finished project to the development team — and that’s exactly when the problems start to show up. One never knows in advance: maybe the incredibly looking design will take way too much time to develop.
An approach we advocate for is involving the developers at the design stage and creating cross-functional teams. In this way, the programmers can give their perspective on the solution and generally have a good understanding of the project.
To engage cross-functional teams at Northell, we resort to agile methodology basics. The agile approach makes our team flexible, which is crucial when working with startups. It is also important for us to stay in touch with our clients, so we are sure that we are moving in the right direction and meet their expectations.
Many discussions still revolve around various project management approaches and their effectiveness: some PMs strictly follow a chosen methodology, others ignore them completely. We prefer not to follow agile blindly but rather see it as a guide to work organization, offering some key principles to base our decisions on.
As collaboration and task prioritization are the pillars of agile methodology, a project management system is a valuable tool for the proper implementation of these principles. There are many solutions available on the market: Jira, Asana, and Basecamp, to name a few.
At Northell, we gave preference to Asana. First of all, it gives our team space for a collaborative approach — each team member has access to the project files and can add comments or suggestions. Secondly, it is a tool for ensuring accountability through checklists and deadlines.
One more practice that undoubtedly shapes the workflow organization is documentation. It is an efficient way to streamline design implementation: documentation is the single source of information for everyone involved in the process, including clients. Project documentation consists of style guides, sitemaps, wireframes, prototypes, and other files.
Among those documents, we found checklists to be especially handy for facilitating design handoff to the development team. They consist of all the deliverables that have to be double-checked before wrapping up the project. The checklist also serves as a guide for the developers, listing all the design aspects that cannot be ignored.
2. Learn each other’s language
There is an everlasting discussion on whether designers should learn coding and developers should know the design basics. Of course, we all understand that designers can’t be developers and vice versa. Still, it won’t hurt to learn what the other team is up to and what they are actually doing.
Before starting work on any project, our PM carefully analyzes and discusses with the team all the details and technical limitations that have to be considered at the implementation stage. Evidently, this discussion can be much smoother if all the participants understand the logic behind particular restrictions.
Having a good understanding of the processes outside one’s responsibilities significantly aids with grasping various project documentation, such as design specifications or coding requirements. And, of course, in that case, the design professionals might not get offended when the changes are made to their ideas, and programmers won’t think that some design elements are redundant.
3. Establish a productive communication routine
It is evident that proper communication is the key to good team collaboration. No matter how sophisticated the work organization is, if people in the team do not talk to each other, there will definitely be a whole load of “I thought he knew that” and “No one told me this could be a problem.”
Some tips for enhancing effective communication inside the team are:
1. Choosing one messenger
First off, there should be the main communication platform. Each team member should know where all the information is shared and kept. If all the important updates are exchanged via email, but daily communication goes through Slack, there is a big chance that those Slack messages can be ignored or an email will be seen way too late.
Thus, it is best if everyone agrees on the preferred communication method. For example, our team uses Slack: we created a system of channels to arrange communication based on the project or department.
2. Agreeing on regular meetings and discussions
Yes, not all team members are fans of long meetings several times a week. But, to be fair, the meetings do not have to be unnecessarily long and frequent. The design and development teams can agree on a weekly catch up meeting that is always held at the same hour.
For example, at Northell, we organize regular check-ups between the design and development teams working on the same project. The project manager facilitates these meetings to keep the discussion on track and not to miss any important points. Such meetings give space for a collaborative design approach. In this way, the developers can make suggestions before the very development stage.
Remembering the goal
There is no need to highlight one more time why designers and developers working together is so essential for a project’s success. It is the main way to bring much-needed consistency to the work process. With the positive team dynamics and collaborative approach, everyone feels free to offer ideas and improvements, but at the same time understands the accountability behind each decision.
Let’s remember that, after all, each team member has the same aim: offering an excellent user experience. Thus, achieving this goal should serve as the primary motivation for a collaboration between two teams.