In most companies designers work separated from developers. Even on small startups, product teams works apart from dev teams. Product teams come up with application concepts, new features to add or change. And when everything’s decided, they deliver it to developers.
Then, the next phase will involve lot of eye-rolling, hair-pulling and compromises. Impossible features are dropped. Developers need to meet deadlines, so other seemingly unessential things are also dropped. Things like animations, custom elements, help sections, empty states rarely make it into the app.
When the project ends and product teams come back for QA, they get disappointed with the final result. The app doesn't look like the specs. The user experience looks wrong. And it’s too late to change most things.
But it doesn’t have to be this way. Most of the issues can be solved by having developers take part in the concept stage. Bringing developers only after the design is done wastes great opportunities.
Early on, developers can help with:
Can we build feature on all the platforms we’re targeting? Or is it just wishful thinking?
In real life, all projects have budgets and deadlines. Will the features we’re planning fit our schedule? Even an high-level estimate from a developer helps decide on a set of design alternatives.
Sometimes there’s nothing like a prototype to test and validate a concept. Having a developer at hand can speed up prototyping, and it’s fun change of pace for them as well.
The biggest source of errors during the implementation is ambiguities in the specification. Developers are experts in identifying them, making sure they get cleared earlier.
Bottom line, developers worked through other projects before. They know where compromises were made. Plus, they’re curious about the platforms they develop for. Pitching in with alternatives and shortcuts is the most valuable way they can contribute on product design.
And there's a bonus.
Since developers already took part of on the concept, they will build things quicker. They are already familiar with the design, and the rationale behind the decisions made. They can share those with the rest of the development team, and get the message out quicker. They will still make compromises, but they will be fewer and more knowledgeable.
So, next time you design a new product, get at least one developer joining you. Your product will end up better because of it.
More on this topic: Things You Have Never Thought Your Developers Know. CEO’s Confession