JavaRush /Java Blog /Random EN /Captain of the coding team and chief fixer. Who is Team L...

Captain of the coding team and chief fixer. Who is Team Lead and what does he do?

Published in the Random EN group
We continue to review various professions and specializations in the IT field that are related in one way or another to software development. Captain of the coding team and chief fixer.  Who is Team Lead and what does he do?  - 1

https://www.spokesman.com/stories/2009/sep/05/laboata-only-way-cruise-spokane/

Not long ago, we already reviewed the Tech Lead position and figured out how it differs from, for example, a Team Lead or a project manager. Therefore, we decided that it would be logical to take a closer look at what a typical Team Lead does in the field of software development, what skills are required for this position, and how a good team lead differs from a bad one. Captain of the coding team and chief fixer.  Who is Team Lead and what does he do?  - 2

Who is Team Lead in a development team?

As a rule, in a development team, Team Lead is one of the experienced programmers (although team leads are not always coders), whose responsibilities include not only writing code and other technical work, but also coordinating the activities of the entire team. Most often, developers or QA testers who have good knowledge of both the technological part and the competencies and characteristics of each team member are appointed to the role of team lead.

How is a Team Lead different from a Tech Lead?

Since these two positions are similar in many ways, and the responsibilities of the specialists occupying them largely overlap, let us clarify how they differ from each other.
  • Unlike a Tech Lead, a team lead does not have to have a technical background. This could be either a manager or a former programmer who has long moved away from directly writing code.
  • Team Lead can manage a team remotely.
  • Team Lead is more focused on budget, plans and other non-technical aspects of the team.
  • More involved in HR work, including vacation planning, salary review, etc.

How is a Team Lead different from a Project manager?

Another position that overlaps with Team Lead and this causes some confusion is the position of project manager. In short, the difference is that a team lead should be focused primarily on people, that is, the team, while a project manager focuses directly on the project. This is expressed in the fact that the team lead deals with issues related to the technical implementation of the project by the development team, while the project manager resolves issues related to the project, such as securing financing, short-term and long-term strategy, legal aspects, and so on. Captain of the coding team and chief fixer.  Who is Team Lead and what does he do?  - 3

Responsibilities of a Team Lead

Now let's go over the main responsibilities of the Team Lead of the development team.
  • Monitors compliance with quality standards during development.

    It is the team lead’s task to ensure that the team writes code that meets company standards and produces a high-quality product.

  • Monitors compliance with priorities.

    Also, the team lead must ensure that the team follows priorities when working and generally knows what is most important at each specific stage of production of a software product.

  • Organizes the team.

    As many experienced team leads note, their task, first of all, is to ensure that the team is self-organized, and each participant contributes to the common cause.

  • Responsible for all problems or difficulties in the team.

    It is the team lead who is responsible for all problems in the development team that may affect the quality of the final product.

  • Sets an example of professionalism and adherence to best coding practices.

    Another fairly important role of the team lead is to set an example for other team members to follow established principles and best practices in coding.

  • Understands and can implement different processes and methodologies in coding.

    Also, Team Lead must have an understanding of and be able to implement various methodologies in a team of programmers, such as Scrum, Kanban, XP, Lean, and so on, for the benefit of the project.

  • Distributes responsibility.

    The team leader’s task is to organize the workload in such a way that none of the team members is the only one capable of implementing one or another part of the project. So that the team is effective and continues to work, even if one of the specialists is not on site.

  • Maintain communication with clients and/or management.

    Another important task of the team lead is to maintain constant communication with clients or management to ensure that the development team clearly understands the goals and problems of the project from a business point of view.

    Responsible for working on the project.

    But one of the most important and defining functions of a team lead is to ensure stable and ongoing work on the project so that progress is clearly visible and understandable to both the team members themselves and management/clients.

  • Maintains discipline in the team.

    And of course, the team leader is obliged to monitor discipline: how team members interact with each other, attend meetings, relate to work, etc.

Captain of the coding team and chief fixer.  Who is Team Lead and what does he do?  - 4

How to be a good Team Lead? Adviсe

Now let's move on to tips on how to be a really good Team Lead, from industry experts and experienced developers.
  • Focus on people, not just programming.

    “Very often the position of team lead is occupied by the most senior and experienced developer. This could be a mistake. Just because a person has strong skills and technical knowledge does not mean they are also good at leading people,” Mike Honeycutt, a technical support specialist at the University of North Carolina, shares her experience on the Q&A site Quora.

    Although the technical aspect of working on a project for a team lead is also of great importance, the most important role in this position is still played by leadership, that is, managing people and organizing the work of a team of programmers and other specialists. Therefore, it is important to develop communication and management skills.

  • Control your ego.

    This position should not be perceived as that of a big boss. In fact, it leaves very little room for control. “It was a big surprise to me that the team lead actually has very little power over the project as a whole. For those who enjoy power, this may be difficult to understand. The team lead position leaves very little room for ego,” said Chuck Karish, a release engineer at Google.

  • Learn to mediate and negotiate.

    “For me, the biggest challenge has always been the need to be an intermediary between the development team and everyone else. Every decision, even the simplest one, can have far-reaching consequences, so it is very important to discuss it with all stakeholders,” says Linda Branagan, a former experienced team lead at Construct Internet Design.

  • Discuss details and agree on everything in advance.

    Since communication is an important part of the team lead’s functionality, try to discuss all aspects of the project as much as possible and agree on everything in advance, advises Mike Scanlin, CEO of the American company Born to Sell and former team lead in a number of IT companies, including which T/Maker and General Magic.

    “There’s nothing worse than working on a project for a year and having to show off your work at the next sprint and hearing from team members something like, “What about these features?” or “We forgot that we will need to implement this.” Try to make sure everything is known and clearly planned before you start working on the project,” he recommends.

  • Don't provoke conflicts, but be prepared for them.

    It is also important to remember that being in the position of team lead, it is very difficult to please all parties, and therefore conflicts in one form or another are almost inevitable. “Working as a team lead means that at some stage you will have to make decisions regarding team members, and these decisions will inevitably cause confrontation. This aspect of the job often comes as a surprise to many team leads, because not everyone knows how to resolve conflicts,” said Steve Morse, support developer at Tealeaf Technology.

Captain of the coding team and chief fixer.  Who is Team Lead and what does he do?  - 5

Salary and career prospects

And finally, as usual, let’s look at team leaders’ salaries and their career prospects. According to the authoritative resource PayScale, in the United States the average salary of a team lead for a programming team is $105 thousand per year. Glassdoor gives the US average of $87,000 per year, with a range from $53,000 per year (minimum) to $130,000 per year. According to the ZipRecruiter website, the average salary for team leads in the United States is even more modest, at $53 thousand per year. As for our region. According to information from the DOU.ua resource, the average salary of a Team Lead in Ukraine is about $3,100 per month. In Russia, according to this data , team leaders’ salaries vary on average from 150 thousand rubles. (about $2000) up to 250 thousand rubles. (about $3600). In Belarus, the resource dev.by tells us. Team Leads earn on average even a little more than in Ukraine, namely about $3,550 per month. As for career prospects, team leads have quite good ones: a successful team lead can rise to a higher-level manager, such as CTO or even CEO. Another significant advantage of this work is the fact that it is at the intersection of managerial and technical positions, which means, in addition to development towards management, a good team leader, if desired, will be able to develop in the technical field, for example, to a software architect.
Comments
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION