Great enterprise software products require great design, great development, and that both of these elements interact seamlessly for the benefit of the user. When designers and developers don’t march in lockstep, the lack of unity shows in the product.
Discover how to get your designers and developers working side-by-side by solving for the user first, improving collaboration, and codifying all your great ideas into a single design system.
1. Solve for the user first.
While it can be easy to get caught up in the important details of a design you’ve been working on, or the integrity of a solid build, the user must remain the compass for designers and developers. After all, that’s who we’re building for.
If a web or mobile enterprise application does not work for the users, every single one of them, it does not work at all. When faced with a pivotal design or development decision, always ask: is it better for the user? If it is, do it. If it isn’t, don’t. It’s definitely worth saying, though, that designing and developing for the user is not easy stuff.
To create what works for the user, app designers and app builders have to become digital therapists, addressing people problems, business problems, rules problems, time and space problems, mixed up with technology problems.You’re solving a multi-fold tesseract puzzle. Day in and day out. In solving this puzzle, collaborating early and often is key.
2. Don’t be afraid of the hand-off.
Ah, the dreaded hand-off. Designers worry that the work they’ve lovingly created may be misunderstood or deemed impossible. Developers fear that they’ll be handed a project with impractical requirements and deadlines. And all are trying to make their stakeholders happy. Folks, what we’ve got here is a failure to communicate.
Lack of communication leads to lack of understanding, empathy, and trust—which are all essential to make any cross-team project or technology successful. Make this a non-issue from the start by working together from the start.Formally, make sure that there’s a well-defined process in place to share goals, priorities, and KPIs between teams. Ask: what does everyone care about? What do we have in common? Devote attention to the stuff that seems little, but makes a big difference, like how you name files and how you document what you’re doing.
Informally, buy someone coffee and get to know them. (According to our own research, designers and developers love/need coffee.)You don’t have to hold hands and skip around (unless you want to), but you do need to align at every level, bottom-up and top-down, and understand that you’re all on the same team.
And don’t let that alignment drop off after the project changes hands.
An architect wouldn’t hand off their blueprints to a contractor and only check back in after the building was constructed. And a contractor wouldn’t base his interpretation of the blueprints on best-guesses. They’d work together to build something awesome.
Similarly, designers and developers should be joined at the hip through the entire app development project. Set up regular check-ins between teams to ensure mutual understanding, maintain trust, and provide opportunities to ask and answer questions.
3. Create common understanding through your design system.
When you take the time to build trust, you want to work together, it comes naturally. To capitalize on that trust, however, you have to find a way to codify it.That’s where design systems come in. And it turns out, the definition of a design system often depends on who you ask.For designers, a design system helps you focus your creativity to drive consistency and scalability.
For developers, a design system needs to guide you quickly and painlessly to accurate build information, like coding standards and documentation. For both designers and developers, you can use a design system to simplify and standardize the subtle but significant elements that make your app look and feel “just-right,” like:
- Naming conventions
It’s vital to understand how a design system works for each person that uses it. But what would happen if we expanded our view of design systems beyond the specific functions they enable for each team, to the big picture: the process by which a product comes to life in your business.
When we expand our view of the design system, we can see beyond our own specific functions to glimpse the greater mission. We can create more efficient processes and connections to help all of us get to our goals, individual and collective, faster.