In my last post, we’ve discussed the importance of communication in a project as well as why communication breakdown occurs and the general method to avoid it. Today, I would like to share some little tips that get me through and avoid potential breakdowns. Hopefully, it can help you too.
1. Know your requirements
A mind with clarity is the first step to effective communication. How can you explain your requirements if you don’t know what they are? Developers are often faced with vague, wishy-washy briefs such as “it needs to be just like Facebook, only — er — like, different”.
A good developer will immediately begin to analyze your idea. They’ll ask questions. They’ll pose “what-if” scenarios. No one will expect you to have all the answers, but you should be able to discuss the majority of problems. If you can’t, you haven’t thought the project through. It’ll fail.
Depending on the project, this documentation might include a style guide, mock-ups, and/or flowcharts. If you don’t know exactly what you want, there’s little chance even the best developer will deliver something you’re happy with. Time spent up front hammering out the details is never time wasted. The less you assume and the more you document, the smoother the project runs.
2. Be clear and decisive
A developer’s answer and explanation are only as relevant as the question that is asked of them. In describing a feature, be careful to note when action would be taking place, how this action would trigger a reaction, and what the result would be. Are there any conditions on the feature? For example, can only some users take this action or can everyone? Use the same descriptive detail when describing a problem as well.
Try to think like an engineer.
Technologically challenged employees can learn to make things way easier on a software development team. Going through the following iterative process will enable them to conceptualize their problems in new ways and think more like engineers:
- Consider all the angles for the functionality or feature desired.
- Succinctly describe how it should work and the reasoning behind it.
- Provide a prototype or schematic or even chicken scratches on a napkin.
3. Don’t assume anything
One of the worst statements made by non-developers is: “Hey, we should implement feature X. It’s easy, right — it’ll only take a few hours.”
It might take a few minutes, a few months, might be impractical or might be technically impossible. You don’t know — if you did, you wouldn’t require a developer to implement it for you.
Talking might not be the easiest way to communicate with software developers
4. Communicate the “Why”
This one gets missed out most of the times, but in fact, the “why” is as important as the “what”. You must answer the question “Why” – yes even if you have not been asked. Why are you building what you are building? What is that motivates you or what inspired you to get started with this product in the first place? Why do you need it?
This is one thing if communicated well, can be the separation between software which checks all the boxes to be great and the one which does not even meet its objectives. Having your software developers aligned with the vision of the product makes everyone feel part of the team.
5. Give Feedback and keep communicating
Your project plan should include ongoing communication with frequent updates from your developer. This ensures your project stays on track and that you don’t find yourself with something totally different than what you initially expected.
To make the most of regular updates, be sure to provide useful feedback to your developer. If you don’t like something, let them know why. Nothing is more frustrating than being told something is wrong and not knowing why. And demoralizing your developer is not the way to get what you want. Make sure your feedback is meaningful and actionable at all times—even when you’re happy with the work.
6. Mutual Respect
This isn’t just an empty ‘Hey, I respect you’ and a thumbs-up, it’s allowing people to take ownership of their own work, and giving them control over your work too. Even though they’re a developer, they may be okay designing something from a quick sketch based on your visual language without any design input!
While you may be lucky enough to find a developer who understands your vision from the outset, most of the time that’s not the case. We hope these seven tips will help you communicate more efficiently with your developer. Clearly defining your vision, explaining your requirements up front, and providing your developer with helpful feedback are all key to ensuring the project meets your expectations
Although this post was written with a developer’s perspective, we get that effective communication is a two-way street. Ensuring success in a development project or relationship goes back to ultimately one key take away: context. In the next part, we will talk about the developer’s side of communication.