A few years ago, I was a very happy software engineer. I had almost everything under control and I knew how to measure whether or not my day went well. But that task is not easy! Especially when you were previously an individual contributor, measuring how the day went with story points, tasks, lines of code, and pull requests.
With time, I started working in managing teams. From my experience, the first weeks, and even months, are hard because they can be a little confusing. And sometimes, the transition period could even extend to a year, so one of the most important things is to be sure that it’s what we really want to do.
Then the real work starts and we find that we aren’t able to measure the success of our day. This is one of the trickiest situations.
How can we evaluate our work when we don’t execute almost anything?
But I’ve learned, with time, that the key is to evaluate my work based on the work of my team, and that is when I started to really enjoy my job as a manager.
“Talent wins games, but teamwork and intelligence win championships”, Michael Jordan
After talking about the introduction of software engineers and managers, I’m going to talk next about some of the useful advice I have been collecting during my career.
My first piece of advice: Improve your communication skills
This advice is super important. When I was studying at University, I learned a lot of coding, architecture, operating systems, databases, … but not so much about how to communicate (with your team, your boss, …), delegate, give constructive feedback, … Here is a quick summary of useful and simple advises that can improve your communication skills:
- Be friendly
- Be available
- Be a good listener
- Be clear
- Be aware of non-verbal communication
- Regarding feedback, it’s important to take a look at SBI feedback (Situation, Behavior and Impact)
This is a typical SBI feedback example:
During yesterday morning’s team meeting, when I gave my presentation, I was uncertain about two of the slides and your sales calculations were incorrect. I felt embarrassed because the entire board was there. I’m worried that this will affect the reputation of our team.
Situation = During yesterday morning’s team meeting, when I gave my presentation Behavior = I was uncertain about two of the slides and my sales calculations were incorrect Impact = I felt embarrassed because the entire board was there. I’m worried that this will affect the reputation of our team.
To be prepared to communicate effectively, it’s important to know as much information as possible. It’s key to have transparency in your teams, because of that you should use a tool for tracking the progress of your projects. There are so many tools that are useful for this purpose. I personally use Jira, but I have also used others like GitHub, Trello, Pivotal, … This could be related to the methodology or process that you use for implementing your project, in my case, and I’m sure in many others, I use an Agile methodology, Scrum.
My second piece of advice: Improve your negotiation skills
In a management role, we spend almost all our time negotiating. Here are some relevant and useful negotiation skills:
- Listen actively
- Ask good questions
- Build rapport
- Search for smart tradeoffs
- Develop A Plan Prior To Negotiating (for me, this last one is the most important)
These are just some of them, but there is much more!
My third piece of advice: Identify what kind of feedback is good to give in public versus handle in private
Most constructive feedback is best given in a 1:1 meeting because saying it in front of a group can make someone feel put on the spot. On the other hand, public feedback is important to congratulate your team or team members if they did a good job.
As managers, it’s quite common to have a busy agenda, but it’s important to always make time for your team. Some common ways to do this:
- Regular 1:1s. I like to have biweekly sessions, or even, with some of them, weekly. Make sure to plan the meetings based on the employee’s preferences.
- Be available via your messaging platform
- Block some hours in your calendar to talk with your team
- Go for lunch or coffee
While I think the advice to spend more time with your team is important, if I had to choose one of the above-mentioned points, it would be, without a doubt, regular 1:1 meetings. I use these 1:1 meetings to give direct performance feedback, to set goals and review them on a monthly basis.
In this performance feedback, you can analyze how close the employees are to achieving their goals and mentor them to go faster.
If in the future, the employee doesn’t reach some of their goals, at least, you’ll be sure that you, the direct reporter and manager, worked hard to reach them, leaving no surprises for both parties. For this exercise, it’s very important to be honest and build a relationship with your team based on solid trust.
As I mentioned before, your agenda as a manager will be a busy one, so it’s necessary to organize your day and learn to prioritize. Every manager has their own tools like Trello, Notion, Jira, … to prioritize their tasks. I, personally, use Trello, trying to have a column for the important tasks of the day, other for important tasks of the week, and finally, I have a column for deprioritized tasks.
It’s essential to learn how to prioritize your work. It’s also crucial to understand the difference between an important task and an urgent one.
I try to rank my tasks with my own algorithm taking into account metrics like urgency, business value, revenue, … You can use any tool containing a kanban board.
In addition to that, and to organize my day, I use Google Calendar, and I share my calendar with all my teammates. In there I try to have regular events for 1:1s, weekly syncs, or other kinds of events.
For my 1:1s, I’d suggest having a shared document with your direct reports. I personally use two documents:
- Topics. In this document, we take notes about the things that we want to talk about in the next 1:1s. Also, we can use this document to reflect the actions that we want to implement or investigate for future 1:1s.
- Goals. In this document, we track our goals and we provide regular feedback about the status of each goal.
These are some of the suggestions that I would have appreciated receiving years ago. For each one, I could write a full post because they are so important.
I hope the content of this post helps you in the future, especially, if you are starting your career as a manager.
VP Engineering at Coverwallet - ex Addentra CTO - BSc & MSc Computer Science