Do you often find yourself in a situation where your developers seem to prioritise the technical aspects over design discussions? Maybe they present a design that they have already implemented in another part of the application, or they retract a feature they initially committed to after several rounds of discussion. Perhaps the end result looks different from the original design, with the developers claiming that they focused on functionality rather than aesthetics.
If you've experienced any of these scenarios, you're not alone. Many designers face similar challenges when collaborating with developers.
The Root Cause
One of the main reasons behind these issues is a lack of understanding between designers and developers. As designers, we tend to focus on solving users' problems through our designs without considering the technical feasibility. We often believe that it's the developers' responsibility to bring our designs to life. However, this approach isn't always practical.
Developers work under tight release schedules and rely on external frameworks to expedite the development process. These frameworks provide pre-built solutions for common problems, saving them time and effort.
Understanding Frameworks
There are various frameworks available for frontend development. Some frameworks, like React, Angular, and Ember.js, are used to build both the backend and frontend of applications. Others are specialised for specific functionalities, such as D3.js, Three.js, Grid.js, etc.
While these frameworks undoubtedly facilitate rapid development, it's essential to consider their design principles and customisation options. Failing to customise a framework can lead to design inconsistencies, making the product appear amateurish.
What I Did About It
It's crucial to have a conversation with your developers to understand the frameworks they use. Take the time to read and comprehend the guidelines provided for each framework.
Understanding the framework's guidelines enables you to modify the look and feel of components — which aligns with the developers' perspective when they evaluate your design. They want to ensure they don't commit to implementing elements that can't be easily achieved using the framework.
Once a product adopts a particular framework for a function, everyone is expected to follow it for consistency in the codebase. This standardisation facilitates scalability and updates.
When developers know that your design adheres to the framework's guidelines, it brings them relief. They can trust your design choices and provide more contextual feedback during design presentations. By familiarising yourself with the limitations and possibilities of a frontend framework upfront, you can create visualisations that are feasible within the framework's constraints.
