Role: Tech Lead
Tech Lead, as a role, involves numerous activities, with different responsibilities, working at different levels. Any engineer can share some of these responsibilities but a good Technical Lead will be doing the majority effectively.
Information Gathering
First asking what and why. They seek to understand. They’re striving to understand from the business strategy, what is the tangible outcome they are here to affect and deliver.
This may begin with dedicated discovery sessions, lasting days to weeks, or through a few conversations to understand the overall goal and people involved.
Relationships
Alongside understanding the problem, they must understand the people: build relationship at different levels and understand their motivations. Hopefully one is designing with security in mind up front, but the tech lead should seek out the InfoSec team to understand their requirements, if there are industry regulations and how these can impact technology choices and delivery timelines.
A tech lead should build credibility and trust among the organisation by talking with domain leads, bringing them on the journey, asking their input and consulting and addressing their concerns. Demonstrating your technical depth and knowledge, how to incorporate and solve their challenges in a design is a sure-fire way to build credibility and trust.
The focus isn’t on just those in the business, they should strive for meaningful relationships with their team; to dedicate time to their wellbeing and development, to ensure they are enjoying the experience and have the support they need - to feel a part of something.
Technical knowledge
Tech leads need to have a rounded technical knowledge, to understand how systems fit together and what tools will best solve a problem. It is typical that the academic best tool of choice is the wrong tool for the job; a good tech lead looks at what technologies a business already uses, what level of maturity they’re at and is it easy to hire for. Tech leads are here to deliver products, they shouldn’t get hung up on the perfect solution, but what’s best and fit for purpose for an organisation.
A large part of the role is to trust the team but to establish boundaries on quality. Is the system observable, how do we know when it is broken? Is monitoring and alerting in place, are we logging and understanding things when they go wrong? Is it scalable or can it handle expected loads? Is the solution versioned and using automated deployments to promote code and infrastructure? It is critical the tech lead shows what good looks like and agrees with the team up front the standards.
Planning
The role facilitates short, medium and long term planning.
Day to day the team need to know what they’re working on. They may be aligned to a goal but do they have well defined tasks to work on and deliver? Are tickets refined, clearly stating the requirements? The tech lead should ensure on a regular cadence that the team know to a granular level what they’re working on for the next week or two.
Alongside the team, the tech lead works directly with the business to create a medium to long term roadmap, this maybe even include activities like defining a RACI matrix. The medium to long term goals are what steers the team and delivery, these often change through course correction and strategy changes but will give overall purpose.
Purpose
You should be able to describe your mission in one to two sentences with an outcome driven focus.
A tech lead should align the team to the overall outcome and as individuals, team members should be able to articulate why they are there and what they are doing, what the purpose is and how they will help deliver the outcome.
Leadership
A tech lead can lead well, organise a team and provide a cohesive environment where everyone can excel and deliver. They should remove environmental difficulty and ease challenging processes so team members can focus on what they need to.
Sometimes a lead must influence without having authority. This goes back to building relationships and one’s overall credibility. Establishing one’s self as an expert is essential, to have strong opinions that are loosely held: if new information comes to light, the lead should be open to having their mind changes - if it is the right thing to do.
As the individuals grow it is important to share the role and delegate tasks to those around the lead. For a team to be successful and build in role redundancy, the responsibilities of the lead should filter to the team and be shared; this also provides growth opportunities for those on the path to becoming a lead.
Doing
Believe it or not, on occasion tech leads write code! In my experience, a tech lead is lucky if 50% of their time is coding and writing software; the remaining time is spent in the activities above.
Different organisations and teams within have different flavours of tech lead and so different balances of how they spend their time and what their responsibilities are. Asking questions and identifying where attention and effort is required across the various activities is a good starting place to help define what your flavour is.