Let’s Talk About Programmer's Communication Skills
It’s not all about coding. My communication skills improvement
Introduction
Since my mind is running wild with thoughts when I should’ve been sleeping, I will share them with you if you don’t mind.
In this article, I want to discuss one of the most fundamental skills we should master or at least have a good grasp of — Communication.
As a programmer, I think this is one of our weaker skills that we should work to improve — at least it is one of mine.
I’ve been working on it for years, and this is what I want to share with you:
- Why communication is so important?
- Benefits of good communication skills
If you are a good communicator, please, share with us how you managed to become so skillfully and what advice would you give someone like me who’s been trying to become one.
Without further ado, let’s start.
Why communication is so important
If you Google if programmers are good communicators, you’ll see a bunch of articles discussing this topic.
And we’re not portraits in a nice frame if you ask me. We are often seen as “poor communicators” and the justification is that we spend most of our time in our loved silence cracking our keyboard and sipping our coffee (I do).
I’m guilty of being the kind of programmer who would join a meeting and stay mute till the end — I would only connect my microphone to say “hi” and “bye”.
In my first experience at one of the major telecommunication companies here in Portugal, I had this one senior who would encourage me to speak during meetings, especially those with whom I was directly involved in the project.
He even caused me to be sheepish and that I needed to get loose.
That was the call for me to stand up and speak up. I knew that it didn’t matter how hard I worked and how many projects I completed, the only way I could set myself up for career progression was through a good communication skill.
— Understanding the requirements:
Before starting any development, there are usually meetings with different teams to discuss the requirements of the project.
This is the phase where we need to be able to crack every complex and ambiguous requirement to be sure we truly understand what is needed and wanted from us.
My senior colleague whom I’ve mentioned previously, was very encouraging in this aspect.
He would often send me private messages on Skype (yes, the company uses Skype Business 🫠) to ask questions. Sometimes I did.
It was only after I moved to my second company in Portugal to work as a Python Programmer that I had the opportunity to expose myself and work on improving my communication skills.
I was responsible for a couple of important projects and as a result, I had to participate in various meetings to discuss requirements and understand the needs of other teams (non-technical).
But communication is not only about you speaking. You have to be a good listener as well to be able to understand the requirements.
One of the “tricks” to make sure I understand something I learned from Dr. Jordan Peterson, who suggests trying to explain what someone said using your own words and see if he agrees with you.
— Explaining my work/project
People don’t want to see your code. They want to see what your code can do.
And sometimes this can make our work seem so “small” because we can explain what took us a week to do in 1 minute(if did well).
I understood that when presenting a project, whether is a demo to my manager or the final project to the rest of the team, I need to be able to explain using non-technical language to make sure we are all on the same page.
I’m still working on this, to be honest.
But I can honestly say that I see progress already. I’ve been putting myself in this position as much as I can.
Previously I would let someone with more experience present the project while intervening a few times.
Now I try to take risks, especially in the projects that I am responsible for.
— Don’t be scared of (negative) feedback
When you put yourself out and start taking risks, you are now at the mercy of feedback directly thrown at you. And sometimes, is something you don’t want to hear.
However, negative feedback is a powerful tool for growth. Instead of fearing it, embrace it as an opportunity to refine your skills.
It’s essential to understand that feedback, whether positive or negative, is not a judgment of your worth or a personal attack but a means to improve.
What I learned to do is:
- Detach personal emotions: Nobody likes to hear negative feedback on a work they put some effort into. Detach emotionally and focus on the constructive side of “negative feedback”.
- Discuss and seek clarification: Whenever I receive “negative feedback” I always try to understand the reasons. Maybe someone saw what I was not able to see.
- Continuous improvement and growth mindset: If you want to continuously improve, you need to have a thick skin. View each piece of feedback as a step toward getting better.
Benefits of good communication skills
If I wanted to progress in my career I had to expose myself and do (lots of)interviews.
During the Covid-19 pandemic, when I was actively looking for a Python position job, I did tens of interviews.
My communication skills were heavily tested to showcase my skills and negotiate (better)salary.
Professionally, I’m getting better at discussing projects with my team and colleagues and of course, presenting demos and final projects to higher managers.
Communication opens doors. If you want to grow and be promoted you need to be able to communicate and showcase your good work.
The benefits of being a good communicator go behind the spectrum of programming. It can have a huge impact on your personal life as well.
Conclusion
Don’t be a passive programmer. Take the stack, and assume the pole position when you have to.
Speak your mind, take charge, ask questions, and actively engage in discussions.
In today's world, programming alone is not enough. We need a lack of skills that can help us stand out from the crowd. If you want to be heard you have to be able to communicate in a manner that can captivate attention.
During my career, I’ve been identifying aspects that I HAVE TO IMPROVE and one of them is my communication skills. I see it as a growth facilitator.






