Becoming a Tech Leader implies more responsibilities. Your toolkit must include new skills. Besides designing, writing, and reviewing code, tech leaders must care about the team members and the overall code quality and architecture.
For most developers, the transition can be tough, mainly because learning soft-skills can take some time. It requires listening, practice, and patience. Here is an incomplete list of activities tech leaders usually do:
- 1-on-1 meetings: 1-on-1 meetings are a great tool to keep your people motivated and productive. Listening to your team’s concerns on a recurrent basis tends to increase their confidence and may prevent issues from becoming big problems.
- Hiring and onboarding new members: now that you got a team, you must find allies. The hiring process can be very tedious and time-consuming, but it’s crucial to a tech leader to take part. More than that, you need to learn how to match team needs and candidate potential.
- Ensure code quality: you’re not programming as much as you used to. Still, it’s your responsibility to ensure all the code produced has quality. Talking about quality, I wrote some lessons I learned while improving code quality in my team. It may help you.
- Make architectural decisions: from now on you’re not only involved in the decision process, but you are responsible for it. It doesn’t mean you must take all decisions on your own. Your main goal is to express technical concerns and trade-offs, expose business objectives, and ensure your team has all the information needed. So, they can take the best possible decision. In summary, you are in charge of translating business requirements into technical requirements.
- Improve development process: just as code quality, you need to pay attention to the process healthiness. Now, it’s your job to solve bottlenecks, scale your team, and organize meetings. Having a big picture of your processes may help you to polish them throughout all the phases, from conception to production.
Quite a lot, huh? If you are wondering how to perform all those tasks and code too, I present some advice for novice and senior tech leaders.
Advice to Tech Leaders
A tech leader role can have more or fewer attributions. Just by attaining to the ones listed above, you have quite a journey ahead. It is strategical to delegate and automate processes so you can focus on mastering those skills.
Delegating is a blessing every Tech Leader should master. It’s impossible to handle all the stuff on your own. The sooner you realize it, the faster you became more productive. Keep in mind that delegation is not telling others to do your job and sitting on your chair watching them work. That’s not the idea at all. It is an opportunity to motivate and train your team.
It means that every job requires the right people. Depending on the task, people need more or less support and directions. That’s up for you to figure out how much attention each need. Be sure it is way less time-consuming than doing the job itself and use the saved time wisely.
Visualize the future. As a Tech Lead, you need now to guide the team through crucial decisions. Those decisions must be aligned with a plan. Otherwise, there are few chances to truly move the product or project forward. It’s your responsibility to establish a technical vision and make people adherent to it.
The technical vision must include solutions for applications and systems. In other words, you need to have a clear objective that determines the next decisions. For instance, choosing a programming language or a microservice architecture should comply with the proposed objective. The objective itself should comply with business objectives.
Translate business to technical language (and the other way round). Developers and Engineers tend to focus their language on technical terms. However, Tech Leads usually deal with business people, and they may not understand completely what you mean by “refactor”, for instance.
So it’s your job to find common words and expressions to tell the business about technical aspects of a solution and afterward, you need to undo the translation, as you need to tell engineers guidance through the next steps of development.
Automating is vital to scale your team. Some tasks are repetitive. These tasks can be automated, so no one needs to get bored. It also has impacts on the quality, as a tired person can get a bit sloppy.
Finally, keep an eye on the big picture. Being a great leader means giving autonomy to the team. Still, it’s a leader’s responsibility to remove impediments and provide alignment among the team members.
The best way to check whether your team is on the right track is to measure. Metrics and indicators work pretty well to understand how is it going.
Measuring processes make explicit the impacts of your team actions. In other words, it allows you to delegate tasks and automate processes without losing control confidently.
Make sure the numbers tell you the truth. Find useful metrics, and watch them regularly. Sharing the progress with your team can lead to insights, suggestions, and improvements. This engagement can motivate you and your team.
In doubt about what to measure? Check my suggestions on what to measure.
Conclusion
Transitioning to Tech Lead is not easy. There are a lot of new responsibilities and soft skills you need to develop. I listed some advice to help you to become a qualified tech lead: delegation, automation, and measurement.