Healthy Communication for Techies

Samuel Stephen
Developer Circle Abuja
8 min readFeb 13, 2019

From a social or organizational perspective, one of the most important aspects of the development process are communication structures, specifically feedback loops.

Catching the communication flu (Photo credit: Mindful Blog)

Effective Communication skill as a Developer is the ability to speak and listen well at all levels — from your peers and direct reports to the executives of your organization. Chances are that you will not be expected to become a world-class public speaker if you’ve chosen the field of software development as your career path, but that hardly means that you can ignore your communication skills entirely. While maintaining hard technical skills is critical to your career advancement, it is a mistake to ignore softer skills like communication entirely.

When you think of the skill sets most crucial to a software developer, communication may not come immediately to mind. Ask any up-and-coming developer what they are focused on, and you’ll likely hear about the new technologies they’re exploring, what they’re being certified in or big projects they are working through. What is sadly lacking in this picture is the development of good communications skills. Sure, as a software developer you won’t need to be as highly trained in communications as someone in human resources or legal, but it is a mistake to think that software developers don’t need to be skilled communicators. No developer exists in a vacuum, so here is why and how you should be improving your communications skills.

Many engineers I know have great ideas which are stuck in their heads because they are afraid to speak up and share them. I believe being able to speak in public is an essential skill for software engineers, from scrum ceremonies such as demos to giving talks at meetups and conferences or even pitching ideas to potential investors.

It is somewhat certain that effective communication is becoming a far bigger issue than that of pure coding skill. It’s an issue that’s often neglected, difficult to quantify, somewhat intangible but equally, if not more, important to the success of teams, projects, and individuals in software. It’s the issue of relating to people or, in a word, communication. If you possess the ability to work well with others, to be able to lead and to follow when required and to communicate your ideas clearly and empathetically, then you possess something that is far more valuable than programming knowledge or experience.

Let’s tackle it together

Here are 5 tips that I adopted recently to apply in my life in general, but particularly when working with others in my job as a business developer:

  1. Stay Optimistic and Positive
  2. Simplicity is Key
  3. Put yourself in other people’s shoes
  4. Maintaining a good outlook
  5. Listen more

I believe that anyone can improve the way they relate to others and that it’s not a realm that belongs exclusively to the extroverts. I, for one, am primarily introverted but haven’t found that to be a factor in my ability to understand and relate to others.

1. Stay Optimistic and Positive

Want more truth about your social situation? Put yourself in other people’s shoes. But to do that, you have to get out of your own. Our eyes are clouded by the longing to see ourselves in a favorable light. If you can’t afford, or refuse to relinquish your authority, self-conferred exemptions and specialness, it becomes next to impossible to get next to yourself, in other people’s shoes. When you put yourself in another person’s shoes you risk seeing yourself as others would see you — not quite as special as you think. But the pay-offs are worth it.

Feedback is important, in fact, it’s essential to a well functioning team. But there are ways of delivering it that inspire as opposed to demotivating the receiver, which is worth a whole other blog post.

As a reviewer, you make the choice either to tear down or build up the other person (It won’t kill you). If all you know as a developer is too only comment on the negative, it makes pull requests a daunting and dreaded task. It costs you nothing to comment on the good elements, but the value to the person who wrote the code is potentially huge.

2. Simplicity is Key

The expressions “Keep it simple, stupid!” and “Less is more” pinpoint the importance of simplicity. A powerful idea must be simple. Why clutter your audience with excessive information that fogs up your message?

It can be daunting while showing your code to others. Knee-jerk reactions to negative feedback make for a hostile environment, which can be particularly discouraging for more junior developers. I say this from experience: try and fully understand the other person’s viewpoint when they provide feedback, as

When we are right, let’s try to win people gently and tactfully to our way of thinking, and when we are wrong — and that will be surprisingly often, if we are honest with ourselves — let’s admit our mistakes quickly and with enthusiasm. Not only will that technique produce astonishing results; but, believe it or not, it is a lot more fun, under the circumstances, than trying to defend yourself.

Simplicity frees the recipient from interpretation due to a lack of clarity. Complexity in content and message strangles good communications. Complexity will often leave your audience lost in intent and making assumptions in purpose and desired outcomes. Simple and clear direction produces higher quality results.

3. Put yourself in other people’s shoes

In the end; we’re all humans!

When we work with others, we inevitably run into disagreements. Different life experiences lead to different perspectives and therefore different opinions. One way to “win” disagreements is to argue your side aggressively until everyone else backs down. As it happens, this is also a good way to lose friends.

An alternative to this is to try and see things from their perspective. Why are they so passionate about this subject? What’s lead them to their conclusions? Ask them questions to get the full picture; this often helps to dissolve arguments. You might think that you have all the answers, but trying to understand the other person’s viewpoint could show you that you’re in the wrong. It will also show them that you care about their opinion, which will make a peaceful resolution much more likely.

Disagreements relating to software are common, because there are often many ways to build a feature or fix a bug, and developers will swear by or against certain approaches that may have worked or failed in the past. Instead of holding your ideas to be sacred, be open to the fact that you don’t hold all the answers.

Instead of condemning people, let’s try to understand them. Let’s try to figure out why they do what they do. That’s a lot more profitable and intriguing than criticism; and it breeds sympathy, tolerance and kindness. ‘To know all is to forgive all.’ As Dr. Johnson said: ‘God himself, sir, does not propose to judge man until the end of his days.’ Why should you and I?

4. Become habitually positive

Some of my favorite people to be around are those who make an effort to be optimistic and, conversely, the people who I struggle to be around are those are constantly pessimistic. Negativity is draining and contagious, whereas positivity is uplifting and encouraging. Having said that, a useful kind of optimism doesn’t involve blindly saying “everything’s going to be great” in the face of challenges, but it’s the ability to push through without giving up hope, and bringing others along with you.

I’ve found that being positive is a choice, rather than the result of your circumstances. When your production server crashes just before your demo to a panel of investors, that obviously sucks. The optimistic response would be to turn panic into positive action and get straight to work on fixing the server, whereas a negative response (e.g. “WHY DID THIS HAVE TO HAPPEN NOW!?”) is paralyzing. A positive outlook is an essential quality of a leader, and applying it in your work life is bound to change the way that people relate to you.

Everybody in the world is seeking happiness — and there is one sure way to find it. That is by controlling your thoughts. Happiness doesn’t depend on outward conditions. It depends on inner conditions. It isn’t what you have or who you are or where you are or what you are doing that makes you happy or unhappy. It is what you think about it.

5. Listen

We’ve all been in this situation: we’re talking to a group of people when someone jumps in over the top of us. We have a choice of either carrying on talking regardless, probably adding to the confusion, or back down and feeling like we’ve been walked all over. One of the most frustrating feelings is that people don’t listen to you. Therefore, one way to make someone feel valued and important is simply to listen to them.

It might be that a colleague has an idea for how to approach a new feature, a suggestion of using a different technology, or that they simply want to complain about something. Listen to them and don’t interrupt. Only when they’ve finished (and that could be a long time) should you weigh in, and even then only if it’s necessary. Sometimes people don’t need your advice, they just need to talk.

It can be difficult to resist the temptation to butt in if you’re in a group situation, like a project planning meeting, and everyone else thinks it’s fine to talk over each other. However, if you wait until there’s a natural pause to talk, and there will be at some point, not only will it be respectful of others but it will also make you come across as considered and a careful thinker.

Everybody in the world is seeking happiness — and there is one sure way to find it. That is by controlling your thoughts. Happiness doesn’t depend on outward conditions. It depends on inner conditions. It isn’t what you have or who you are or where you are or what you are doing that makes you happy or unhappy. It is what you think about it.

So if you aspire to be a good conversationalist, be an attentive listener. To be interesting, be interested. Ask questions that other persons will enjoy answering. Encourage them to talk about themselves and their accomplishments.

These are just a few of the things that I’ve highlighted in myself that I want to change. I believe we’d all be a lot happier if we put the same amount of effort into building our character as we did with learning technology. I also think that it would improve our ability to learn, as we’d be more open, honest and receptive to valid feedback.

--

--

Samuel Stephen
Developer Circle Abuja

Business Developer | Startup Growth Manager | Food lover | Traveller | A Lover of the Gospel | Developer Communities