Becoming a Better Software Engineering Team Leader
A guide for becoming a great team leader who can walk along with a team and guide them toward achieving their goals.
Read on Medium (opens in a new tab)We all become leaders in different ways throughout our careers in some form. While the exact responsibilities may vary, a leader always has to have a common set of qualities to become a great team leader.
Based on my experience as a team leader and a technical direction owner at a Software Company, guiding a team of engineers and delivering consistent high-quality outputs, I am going to outline some of the important things that you should do as a leader, in this article.
I believe that there is a big difference between a manager who can get work done from a team and a leader who can walk along with a team, guiding them towards a common goal.
Know your team
Once you become a leader, knowing your team members, their capabilities and ambitions is quite important. Since you are now responsible for a set of employees as well as their work, it becomes important to align their capabilities and goals along with company goals for better results.
From time to time, when I have casual conversations with my team members, I ask about them and what they like to do. When an engineer joins my team for the first time, I do the same. This helped me understand their likes and also become closer to them. When the time comes to assign tasks, I use what I know about them, to give them tasks they like and ones which would help them improve.
However, it is also about balancing their individual goals with the company's goals. Therefore, there are times when you have to ask the team to do tasks that they would not like much. But as long as you understand that, you can always alternate these tasks so that everyone is content with their work.
Be empathetic
As a leader, there is a lot of pressure on you as you are expected to meet certain goals on time. This means that you have to utilize the capabilities of your team well. However, you are working with humans and especially if your team is expected to deliver creative or intellectual outputs, you have to be empathetic about the needs of your team as well.
All of us have a family and a life outside work and work-life balance is an important aspect of everyone’s life. As leaders, we should respect these boundaries and assign tasks without overwhelming the team. Of course, even I have had emergencies at work due to production incidents and you have to sometimes request your team to put extra effort outside working hours. However, as a leader, it is your job to not misuse the extra effort provided by your team in these situations and respect the boundaries.
Another important aspect that many people do not pay attention to is the learning curve and the journey of new employees. I have seen many new employees struggling with work in the beginning and I have helped many of them as well. It is important to understand that in the very beginning, their general performance is not completely reflected in their work due to the learning curve. Moreover, as leaders, we should also try to give them feedback and help them improve. It is much worse to have no idea about how well you are doing than to know that you are lacking in some area. Because if they do not know, they will not know what needs to be improved.
As an experienced professional, you may know a lot of things about your field. However, new employees (especially fresh graduates) have a lot to learn. Having proper documentation and a learning path can go a long way in helping them get accustomed to the new environment.
My approach to addressing this was to have a specific guide outlining a proper learning path that any new employee can follow linking to all other guides from it. Since I was guiding a mixture of frontend, backend, and full-stack focussed engineers most of the time, I had separated the guide into sections which allowed any engineer to only read the learning material related to their area. This was a very successful guide that saved my time and helped a lot of my team members and other employees outside the team.
Communicate well
Communication is quite important at any level, irrespective of whether you are a leader or not. As a leader, it is more important to communicate well with your team, other leaders at your level, and the leaders above you. This involves 360° communication and you become an important link holding all of them together.
From showcasing what your team is doing to other leaders, to understanding company goals and direction, these responsibilities lie on top of your shoulders as a leader. You become a spokesperson for the team and communicating with other leaders becomes an important aspect of your job role. In my experience, talking with other leaders helped me to learn what other teams are doing and also to learn more about the general direction of the company.
However, communication with your team takes precedence over other communication. It’s important to give positive feedback as well as constructive criticism to help shape your team members' futures. You should also communicate the goals of the company and the work being done by other team members to your team. I always took several minutes every day during the standup meetings in the morning, to talk about these and encouraged the team to ask any questions they had. This boosts their knowledge as well as their sense of belonging to the team and the company.
It is also a good habit to acknowledge when you are wrong or when you do not know something. You are not expected to know everything and it is never a good idea to pretend in front of your team. You can always take your time later to learn anything you do not know and also let your team know about it. They will appreciate your honesty and your effort much more.
Get your hands dirty
I have heard some people mention that a manager who can get work done by the team, even without knowing the technologies involved, is quite capable. While you may be able to rely on team members and get work done by simply knowing your product and processes at a high level, it gets to a whole new level when you are capable of rolling up your sleeves and diving into the work yourself. It builds up a lot of confidence in you within your team and very clearly marks a leader from a manager.
I have witnessed, myself as a leader and a team member, that a leader who knows what’s happening in depth can influence the team for the better. A team with such a leader knows that they can depend on the leader to get them out of any problem that they will be stuck in. The team members will also grow and improve as a whole, and the team itself will become a well-oiled machine.
Fight for your team
There are many situations where you, as a leader, the team, and the work being done by the team, will get questioned by the higher management of a company. This is quite natural and it will happen as a way of figuring out the areas that we need to improve on.
You should accept and acknowledge any praise as well as blame in these situations. While you could save your skin by playing the blame game and pointing fingers at your team members, it is quite unethical and it will end up destroying the bond between you and the team. At the same time, any praise given to you about the performance and output of the team should be properly credited to the team members as well.
I have seen many leaders who are perfect in many aspects but lacking in this aspect. While everyone knows that such leaders are capable, the trust the team has in their leader is much less. Both trust and respect need to be earned over time, and there is nothing more powerful that can build trust than knowing that the team can count on the leader. Acknowledging your part, as the leader, in any problem and also trying to improve the team’s output, is the best way forward and the team will trust you and your leadership more because of it.
I have heard many times people mentioning that leaders should be less emotional and detached from the team. While this is true to some level as the leaders need to have a clear head, we are all working together in a team with other humans with feelings. Therefore, as leaders, it is important to keep the well-being of everyone in mind in general.
After all that has been said in this article, before helping anyone else, you need to understand your capabilities and continuously improve as a leader. Technologies and best practices change over time and if you cannot keep up with them, you won’t be able to guide a team. In my career also, I focused on improving myself in the early stages and this boosted my opportunities a lot later.
Life is a journey where you get to learn every day. Once you become a leader you get to help others also through that journey. A little bit of empathy and goodwill, from us as leaders, can make it all the more enjoyable for every one of us.