Communication
How to boost your career as a software engineer communicating better with your peers, manager, and partners.
Hi Friends,
Welcome to the 118th issue of the Polymathic Engineer.
As a software engineer, being able to communicate well is one of the most important skills to master. No matter how well you can code, you work with others, and how you do it has a big impact on your career.
Even if you’re the best coder, it’s more likely that your promotion will come from your deliberate effort to better communicate with your team, manager, and partners.
This week, we will talk about 6 lessons everyone should follow when working with others. I learned them the hard way, and I wish I learned them earlier.
Stream - Scalable APIs for Chat, Feeds, Moderation, Video & Audio
This issue is offered by Stream. Stream can help you create seamless user experiences without the hassle of backend infrastructure. You focus on building and Stream will handle the scaling.
Made for Creators & Builders – Launch chat, video, and feeds with minimal code
Free Maker Plan – Perfect for devs and startups (≤5 members, ≤$100K funding, ≤$10K revenue)
Lightning-Fast APIs – 9ms response times, 99.999% uptime on a global edge network
No Surprise Costs – Transparent pricing with hard usage limits
Prebuilt UI Kits – Customize and launch beautiful interfaces in minutes
Target your audience
Knowing how to reach people in the right way is one of the most important parts of good communication. This means providing the right amount of context – neither too much nor too little.
For example, it's important to remember that managers and product managers are not usually interested in the technical details of your work when you talk to them. Instead, think about the project or business goals and how your work fits into them.
However, this doesn't mean you should skimp on any detail. The key is to give your audience enough background to understand what's going on and go into more detail if they need to.
In writing, a good way to start is with a short outline, or "tl;dr" (too long; didn't read), of what your message is all about. After this, give more specific information, maybe with links to project plans or to-do lists for people who want to learn more.
Take control of the conversation
Great software engineers don't just state facts or list options. They take charge of the conversation and show that they can decide what to do next.
Be clear about what you think and feel. This shows you've given it some thought and have some ideas on how to move forward. It's not about being bossy, but about taking the lead and being proactive.
For example, when you talk about a new feature, don't just list the different ways it could be implemented. Instead, say which choice you like best and why.
Don't let conversations get stuck. If you want to know more or don't know what to do next, ask questions. This keeps the conversation going and shows that you're ready to participate and interested.
Let people feel as if they have been heard.
Talking isn't enough to communicate well. You must also listen and let others know you understand them. This is very important if you want your team to trust each other and work together.
A simple but powerful technique is to repeat back what someone has said to you. You can begin by saying, "Let me make sure I understand correctly" and then tell what you heard in your own words. This is helpful because it shows that you paid attention and gives the other person a chance to explain if you didn't get something.
This approach is especially useful in 1:1 meetings or when discussing complex issues. Showing that you've heard and understood what was said can help the conversation be more productive, even if you don't agree.
For instance, if a colleague suggests a solution you don't think will work, don't just brush it off. Instead, tell them what you think and ask if you understand it right. This gives them a chance to talk more and shows that you value what they are saying.
By making others feel heard, you contribute to creating an environment where people are more willing to share ideas and work together effectively.
Be structured
Being organized is very important when you talk to people, especially when you write things down. Good structure helps your audience get your point across quickly and clearly.
For written communication like documentation or project updates, think about how to arrange your information in a way that makes sense to the people reading it. You might organize things by dates when things will be finished, by different parts of the project, or by who's responsible for what.
Using diagrams and images can be a big help. They not only help understand things better, but also make your work look more polished and well-thought-out. A simple flowchart or diagram can often explain a complex process better than paragraphs of text.
When writing an email or a longer document, start with the most critical information. Then give more information to people who want it. Busy people can quickly get the main points, and people who want to know more can keep reading.
For example, in a project update, you might start with a summary of what's been done and what's coming next. For each part of the project, you could then have its own area with more information and any problems that need to be fixed.
Learn to say no
As a software engineer, people like product managers, coworkers, and even your boss will often ask you to do things. You should know how to politely and professionally say "no" when necessary.
When you need to turn down a request, don't just say "no" and leave it at that. Instead tell others why you can't do it right now and what else is more important to you.
You could say, "I'm fixing these important bugs right now, so I can't work on that new feature till then." or "These are the most important things to us right now.". This way, you show that you're not just ignoring them and help them understand why you are doing this.
Try to show that you're interested in the request even when you say no. When you can, offer some kind of help or let others know when you might be able to look at it again.
Remember that saying "no" is not a sign of being difficult but of managing your time and responsibilities. You can keep good relationships with your team and still focus on what's most important by telling them why you're doing what you're doing and giving them options when you can.
Thank and acknowledge
Thanks and praising others for their work is an important part of communicating well and working with others. It's not about being polite but building strong relationships and a good atmosphere at work.
Always remember to thank the people who helped you when you reached a goal or finished a job. Make this known when you can; don't just do it in private. For example, if you're sending a message to inform others you finished something, add all people who helped you along the way.
It's also important to follow up with people after they've helped you. Let them know about the progress or how their help made a difference. This way, you show that you care about what they say and keep them interested in the work.
If a coworker helped you figure out a tough problem, send them a message a week later saying something like, "Hey, just wanted to let you know that the fix we worked on last week has really made our system run better. Thank you once more for your help!"
But it's not just the big things that people should be thanked and acknowledged for. Recognize small contributions, too. An easy "thank you" for your contribution to the meeting today can help people get along.
Interesting reading
Some interesting articles I read the past week: