Shared Understanding between designers and developers.
Meet in the middle! It sounds simple but like any good negotiation, you need to see their point of view, and you need to understand where they are coming from.
This opens the door to collaboration.
Understand the trials of the tireless designer, championing the user and working with stakeholders and clients to give the user a good experience.
Understand the tribulations of the developer – time is always limited, and the backlog never seems to shrink.
Give. Take. Compromise.
This understanding is made much easier when a design styleguide is in place that matches that which is in the code. These are your building blocks.
With the building blocks in place, the conversation is so much more open and we can get the job done rather than competing for position.