Too bad that you're not writing code by yourself and for your own pleasure, right? Instead, you're part of a team (in most cases) and you develop software products for clients... So, growing and constantly nourishing your communication skills as a software developer becomes critical.
And I've just managed to “bust two myths” in one shot:
- that being a good communicator is some sort of innate talent; it's NOT, it's a perfectly "trainable" skill that you can "seed" and "water" on a daily basis
- that brilliant programmers are self-sufficient; in fact, you can perfectly “sabotage” your whole work and outshine your outstanding technical skills if you're bad at communicating with your team or empathizing with the client
So, what would you be? An expert software developer — a “one man show” — or an expert software developer with outstanding communication skills?
One who gets his/her ideas, suggestions and work decisions easily understood and... accepted.
Now, don't think that improving your communication skills as a software developer implies some sort of intensive courses or workshops.
No sir, just some “healthy” habits to stick to and good practices to integrate into your work routine.
Here, let me exemplify:
1. Active Listening: A Key Skill to Grow and Master
How does it work?
Whenever someone's communicating something to you, try to reformulate it, in your own words.
The benefits of turning active listening into a habit?
- by reflecting back one's message you clear up any misunderstanding right from the start and you win his/her trust, too (that person will then be 100% sure that you've paid enough attention to him)
- asking someone else to affirm what you've just said/written is a great opportunity to check whether you've articulated your ideas clear enough
2. Keep It Clear. Keep It Concise
And this goes both for your:
- presentations; any time you need to present your ideas to your clients, to other developers in your team or to the marketing team, project manager
- code writing; the more you'd be mindful of any other developer who might need to read your code after you, the clearer and more concise your comments will be
No need to beat around the bush when you're presenting your work and no need to... define every single variable in your code. Keep it easily readable...
Be specific, stick to the essential parts, trim down all the “fat” from both your verbal and your written communication.
3. Adapt Your Message to Your Audience: Stay Away from Tech Lingo
One of the best practices to incorporate into your “improve my communication skills as a software developer” type of routine.
Get out of your comfort zone, as a communicator, and tailor your message to other audiences than your fellow developers.
You might need to “sell” your idea to a non-technical client or to explain some of those newly implemented functionalities to the marketing team.
Make sure you:
- stay away from slang and jargons
- break it down and use simple words
- use parallels with your audience's specific fields (whenever possible, of course)
Try to imagine a reputed surgeon explaining to you, a software engineer, all the steps he has performed during his/her last surgical intervention...
4. Empathize to Boost Your Communication Skills as a Software Developer
And this is probably one of the most powerful skills in your toolbox.
No matter the circumstances:
- whether someone in your team has just broken a build
- the client just doesn't get the importance of that new feature that you suggested implementing
- the web designer's work doesn't fit your code
… try to walk in their shoes first.
It's only then that you can start putting together your message. Only after you've... shifted perspective and seen the issue through their eyes.
5. Just Take Some Time to... Prepare. Know the Topic
Told you there was no “rocket science” involved when it comes to improving your communication skills as a software developer.
It can get as easy as growing a good habit like getting yourself informed on the topic to be discussed during a planned team meeting or a scheduled sprint review.
- gather information (feel free to take your notes with you if that boosts your confidence in your communication skills)
- try to anticipate questions and prepare your answers
- prepare some key questions that you, yourself, should ask
- take some time to fully understand the metrics and numbers that will be presented and analyzed
6. Mind Your Written Tone
Never underrate the power of your written words!
A “power” that can be either negative or positive, depending on your choice of words.
If you want to improve your communication skills as a software developer you need to mind your written tone:
- for a start, acknowledge that words can stir up conflicts
- then, be mindful with the words you choose for... writing your code reviews, for instance
- and finally, don't hesitate to throw in a smiley here and there, just to smooth down all the unwanted ruggedness from your written words
7. Overcome the Challenges of Virtual Communication: 3 Easy Tips
First of all, what are the very first challenges that come to your mind?
- trivial misunderstandings that grow into major dramas
- that neutral, impossible to “decipher” type of tone that online messages might have
What can you do to overcome them or at least minimize their impact?
- first of all, be mindful of them
- secondly, as previously outlined, try smoothing down your written tone with an emoji here and there and carefully chosen words
- keep in mind that short replies might get interpreted as anger or that you've lost your patience with the person you're communicating with
- when asked a question, remember to take the time to fully elaborate your answers; as opposed to going for a short reply that, as above-mentioned, might not come off right
These are the easy, effective habits and good practices to adopt if you want to improve your communication skills as a software developer.
Now, time to turn all these tips into some impressive interpersonal skills...