How to get a Team Lead job (2023)

Table of Contents
👍 Good reasons 👎 Bad reasons 👾 Ugly reasons 🎖Seniority 🐝 Hard skills Programmer Competency Matrix Note that the knowledge for each level is cumulative; being at level n implies that you also know everything from the… kamranahmedse/developer-roadmap developer-roadmap - Roadmap to becoming a web developer in 2018 BohdanOrlov/iOS-Developer-Roadmap iOS-Developer-Roadmap - Roadmap to becoming an iOS developer in 2018. Learning Android Development in 2018 — Part 1 Before writing a single word, I wish you all a very Happy New Year!!! 🦋 Soft skills Peopleware Peopleware has 6,383 ratings and 351 reviews. Ben said: Peopleware is something of a classic in the world of… The Deadline The Deadline has 1,343 ratings and 116 reviews. TarasProkopyuk said: Книга обязательна к прочтению для начинающих и… Herding Cats Herding Cats has 212 ratings and 12 reviews. Herding Cats: A Primer for Programmers Who Lead Programmers is a… Leading a Software Development Team Leading a Software Development Team has 43 ratings and 4 reviews. Nathaniel said: I got this book because I had… Managing Humans Managing Humans has 2,011 ratings and 177 reviews. Keith said: I bought this book because I love the author's blog… Meditations of Marcus Aurelius Meditations of Marcus Aurelius has 25 ratings and 1 review. Deedra said: Not the exact book: Audible:The meditations of… 45 Татуировок менеджера 45 Татуировок менеджера has 438 ratings and 54 reviews. ☘Misericordia☘ said: Q: I'd rather be judged by 12, than… 🏟Understand your audience 🔼 Direct reports ◀️ Peers ▶️ 🔽 Line manager 📈 Understanding expectations
How to get a Team Lead job (1)

Recently I’ve switched from a developer role to hands-on team lead and decided to share my experience while it is still fresh in memory.

“Hands-on” simply means that I still write code ⌨️

This is how I prefer to match roles and responsibilities:

🗡🗡Tech Lead — a person who is responsible for setting tech agenda for the team, has no direct reports, full-time coding. [Tactical hire]

🗡🛡Team Lead — a person who is responsible for tech agenda and long-term team success, has direct reports, part-time coding. [Strategic hire]

🛡🛡Engineering Manager — a person who is responsible for long-term team success, manages direct reports, almost no coding. [Strategic hire]

A tactical hire is a person who gets work done, preferably in silence, networks with others only when its needed. Happy as long as work is relevant and stable.

A strategic hire pushes their own opinion and agenda. Engaged in work, networks with others who do it and tells everyone a preferred way of doing it. People around are pissed off by the annoying intensity of the agenda.

Both tactical and strategic hires are required in any company.

👍 Good reasons

🛡Ready to shield people

You want and are ready to protect your reports.

Your main responsibility would be to work as a shit umbrella, rules are simple: all negative communication and process changes go to you first, then you filter them and take actions accordingly.

You won’t be able to simply cascade shit directly to your reports. Your job is to transform the shit into constructive actions, feedback and growth directions which don’t look like an offence to your reports.

🌱 Enjoy growing people

You enjoy helping people to study and reflect on their work. You will have to identify the personal agenda of your reports and help them achieve it by crushing obstacles.

🤝 Interested in developing soft skills

You realise how soft skills are important in achieving big goals and want to get better at organising people to achieve big goals together.

👎 Bad reasons

💰 Getting more money

Typically a team lead role is better paid than a developer role in the same company, but if you need more money a 10–20% raise won’t be a life-changing difference. If this is your only motivation it will be hard to succeed in the role.

🤓Becoming a better programmer

If your passion is solving hard programming challenges but you hit a ceiling and your company expects you to become a Team Lead, just change the company. The more you do the more you are, stick to your passion if you prefer computers to people.

⚔Seizing interesting work

Since you will be a person in charge you can organise work in a way that all interesting coding lands on your desk. This superpower should not be abused, the only excuse for this is that you are both the best person for the job and you have a capacity for this in your schedule. Otherwise, give it to your reports.

👾 Ugly reasons

😈 Becoming a boss

If you get a job, you become a boss, but it is not a permanent position, remember this. You merely borrowed the title. Luckily in our industry, if you are a bad boss your reports will abandon you very fast, they have plenty of options even if they are mediocre.

🕷Controlling everything

If you have lack of control as a developer, then don’t think that taking over communication with your team is going to help you. Micromanagement stalls work, you must promote ownership and autonomy.

How to get a Team Lead job (2)

Perfect Team Lead is like the Sun. It has huge gravity to pull everyone in the same direction, often giving peers momentum to overtake itself.


Seniority is an absolute blocker for starting a Team Lead path. To understand what it is, you can read this very good explanation of Seniority from Krzysztof Zabłocki.

You must believe that you are a “senior” developer and should have external evidence of this: popular blog, open-source project, mentoring practice. External evidence is not required, but it is rather strange that a Senior person has no contributions to a relevant community.

There are two main areas which will be assessed in an interview for a hands-on Team Lead position.

🐝 Hard skills

These are your engineering skills, they are useful for getting the job done, but their primary value is in mentoring, assessing and earning authority of your reports.

Do a self-assessment using Skills Matrix:

And roadmaps for relevant platfroms:

🦋 Soft skills

These are your organisation and communication skills. They are required to be successful in the role, so the following areas will be assessed in an interview:

  • Self-management
  • Strategy
  • Working with people
  • Resource management
  • Analysis & Decision Making

Read this before your interviews ;)

Mentors recommend:

I recommend:

A guide for supervising and leading “cats”:

This is a must-read If you happen to know Russian:

aka Interview process

🏟Understand your audience

Answering direct questions is not enough, you have to understand who you are you talking to and their personal aspirations for the person trying to fulfil the role. There are three main groups:

🔼 Direct reports

These are developers and potentially QA. These people are choosing their future boss so you have to sell your Hard Skills (I’m one of you guys) and give them an idea about your management style and agenda (I’m your shield).

◀️ Peers ▶️

These are leads of other teams including product managers and UI designers. These people are choosing the facade of the team they will work with. At this stage, you have to equally sell your Soft Skills (My team will help you achieve your goals) and Hard Skills (I can assess the team and code if needed).

🔽 Line manager

Your boss is looking for a very specific person, your task is to understand who this person is and if you are that person. Reverse engineer this by asking about current challenges and problems in the team, the more info you can get the better chances of securing the position.

If you get an offer, it contains boring info about compensation and benefits, which is not what I want to talk about. The important bit is that unlike most of the coding positions you interviewed for, a management role implies that you are offered a certain set of long-term challenges and problems before you joined, such knowledge rarely included in offers for developers since they are not expected to take strategic decisions.

📈 Understanding expectations

You will be assessed by your progress in achieving these goals and fixing those problems, so if you are indifferent to them, it would be wise to pass on the offer. For example: if your management are performance freaks and don’t care about quality (or the other way around) then it’s a waste of time to join such a company. You have to be eager to fulfil a role.

Start from growing a leader within yourself and the title will follow up.

The quality of a leader is reflected in the standards they set for themselves - Ray Kroc

Thank you to all the good managers I had! Same gratitude goes to the bad ones too, because those bastards taught me what not to do!

Special thanks go to the most humble, helpful and inspiring manager I had — Rafael López Diez.

And thank you for reading 👋

Top Articles
Latest Posts
Article information

Author: Horacio Brakus JD

Last Updated: 01/31/2023

Views: 5859

Rating: 4 / 5 (71 voted)

Reviews: 86% of readers found this page helpful

Author information

Name: Horacio Brakus JD

Birthday: 1999-08-21

Address: Apt. 524 43384 Minnie Prairie, South Edda, MA 62804

Phone: +5931039998219

Job: Sales Strategist

Hobby: Sculling, Kitesurfing, Orienteering, Painting, Computer programming, Creative writing, Scuba diving

Introduction: My name is Horacio Brakus JD, I am a lively, splendid, jolly, vivacious, vast, cheerful, agreeable person who loves writing and wants to share my knowledge and understanding with you.