When you have strong engineers in your team that you see have a great potential to not just do great work but to also improve the way the whole team works it is the right time to introduce them to the tech lead role. Here is a description of a tech lead role that I have used with my teams.
The scope of this document is to have a shared understanding of the technical lead role within the Engineering Teams. It is meant to provide guidance for people just getting started as technical leads, support for existing leads, as well as insights for people interested in transitioning towards such a role.
The Technical Lead is the primary responsible person for all the engineering concerns of a team. They own the architecture and design of the systems that the team owns, control the operational aspects of these systems, and handle their long term technical direction and health.
The technical lead role is a formal leadership role within an engineering team. Aside from individual contributor responsibilities, the technical lead is primarily responsible for leading the business domain / subsystem from a technical perspective and for providing technical guidance to members of the team.
This role is specific to 1 person in the team. The Tech Lead is a partner to the Engineering Manager and Product Manager and other top-level stakeholders of the team in order to make the project and the team successful.
- Provide a “north star” vision for the team and drive the codebase to the new level through a technical roadmap. Constantly drives innovations and and experiments. Manages technical debt and fights for removing it.
- Handles how the systems the team owns are run: incident handling, monitoring, scaling, capacity planning, chaos tests, etc.
- Is responsible for the future of the systems the team owns: technical debt addressing, adoption of new technologies, migrations to updated technology, etc.
- Facilitates for the team an architecture that unlocks team potential for a fast delivery rate and high quality bar.
- Makes sacrifices to ensure the success of the project by sometimes dedicating their individual contribution time to the most difficult or most unappealing parts of the projects with the goal of moving the team forward.
- Acts as an engineering role model for the team.
Day to day activities
- Reviews design document for feature leads and validates the direction suggested
- Facilitates and drives technical discussions in order to reach some level of consensus with the team.
- Provides guidance, technical coaching, and consults the team
- Covers for missing / partially uncovered roles
- Participates in setting the vision of the team, creating strategies, etc
- Defines and enforces team standards and best practices
- Synchronises with the Group Technical Lead (GTL)
- Runs the ship while the Engineering Manager or Product Manager are Out of Office
- Supports engineering peers in their daily work. Has impact through others more often than through themselves. Grows people from a technical point of view by having technical 1on1 reviews and discussions.
Let me know if this was useful for you and what would you add to this description.