paint-brush
12 Effective Communication Tips Every Software Engineer Should Imbibe by@vcordova
265 reads

12 Effective Communication Tips Every Software Engineer Should Imbibe

by Victor CordovaJanuary 30th, 2023
Read on Terminal Reader
Read this story w/o Javascript
tldt arrow

Too Long; Didn't Read

Excellent written communication skills are key to your software engineering career growth. The more senior the role, the more you're expected to communicate with other humans. This article summarizes some lessons I've learned about communicating more efficiently. It's mostly about written communication for software engineers, but it'll probably also be helpful for other roles working in the software development lifecycle.
featured image - 12 Effective Communication Tips Every Software Engineer Should Imbibe
Victor Cordova HackerNoon profile picture


Excellent written communication skills are key to your software engineering career growth. It can help you deliver projects more successfully, create better relationships at work, grow faster as an engineer, and much more. The more senior the role, the more you're expected to communicate with other humans. This article summarizes some lessons I've learned about communicating more efficiently in the context of software development.


Scope 📒

This article is mostly about written communication for software engineers, but it'll probably also be helpful for other roles working in the software development lifecycle.


What is effective communication? 🤷

First, let's define what I call "ineffective communication." It's an exchange of messages which has one or many of these characteristics:


  • Slow

  • Frustrating

  • Causes misunderstandings

  • Consecutively makes people lose time and money


By contrast, for the purpose of this article, effective communication leads to fast and empathetic resolution of problems and the exchange of ideas with a minimum number of misunderstandings.


List of communication tips ✍️

  1. Know your audience: Before you send any message, ask the following. What's their role? What knowledge do they have in the topic you're about to discuss? What timezone are they in? All of this will help guide how technical your vocabulary will be. It's very different from saying, "Our server's overloaded with requests, and we're working to fix the load balancer," than saying, "We're having some issues with our servers but are working on it."


  1. Include key decision-makers in the conversation: If you don't, you might not receive essential feedback or need to backtrack on the decision afterward. Make sure to involve the right people but not anyone else.


  1. Be action-oriented, and propose solutions: Avoid conversations of the type: - Hey everyone, did you see we have this problem - Yup, we have a problem - The end


  1. Think about what follow-up questions the other person will ask: Try to answer them in advance, so the number of messages in the exchange is minimized.


  1. Use as few words as possible: If your message is short, more people will read it, it'll avoid confusion and it'll take less time to make a decision. So, before sending your message, review it. Delete as many words as you can to keep the core message and avoid any fluff.


  1. Clearly state urgency and next steps: Say, if your question is urgent, what's the impact? Is it blocking anyone?


  1. Enumerate questions: For multiple questions, it's easier to enumerate them so you can refer back to them and allow the other person to answer one by one.


  1. If there's room for interpretation clarify!: Believe it or not, a lot of the time, small assumptions or misunderstandings can be very costly. If there's communication with room for interpretation or too vague, get to the details. The simplest way of doing this is to ask, "So when you say [insert original part of their message], you mean [shorter paraphrased version]?"


  1. Know when to change to video call (or IRL conversation): Remember, written communication has limits. If the conversation is taking too long or you need to discuss live changes, you might be better off having a call


  1. Think of solutions: Lead the conversation by saying "We have this problem, and I've thought about some implications, so I think we have these options-enumerate options. What do you think?". Sooner or later, you'll be the person people to come for answers.


  1. Be kind: You're (probably) talking to a person. Don't demand things; ask nicely. Say hi, and present yourself if you're talking to someone for the first time; you don't have to send your whole life's story, just a simple "Hey name, I'm an engineer at team investigating an issue related to invoicing, I could really use your help with the following...".


  1. Respect people's attention: Messaging apps are built to distract people, so be mindful and don't @ everyone, and don't @ after working hours.


Closing thoughts

Thanks for reading this far. I hope one or many of these tips are as helpful to you as they have been to me.

Again, communication is complex, but being a bit more thoughtful about what we write can go a long way.



Also published here.