Great TechLead

Great TechLead

2019, Jan 25    

Tips to become an awesome Technical Lead

What is Technical Leadership

A Technical Lead main responsibility is to help the team move forward. The person assigned this role, is someone who has sound technical experience and strong communication skills. He or she is accountable for the technical direction of the project or product and is the go-to person for cross-team interactions.

A Tech Leads is responsible for important leadership activities such as:

Guiding the project technical vision

Eg. what technology are we going to use, how are we going to deliver the project, what patterns will we use, working closely with the architect, technical advisor, testers, operations etc.

Mitigating risks and cross-functional requirements

  • Can we chose a certain approach or does it have too many unknowns?
  • What will the impact on the project be when taking a certain risk. Eg. introducing new technology you saw at a conference.

Coaching less experienced people

This is a key attribute as teams will have mixed experience levels. The tech lead needs to promote a learning culture and help to remove blockers in the team Eg. pairing and doing code reviews which will result in a consistent approach within the team. It not the role of the tech lead to micro manage the team.

A good Tech Lead

  • knows when to give input
  • knows when to make decisions
  • knows when to step back and allow the team to take more ownership.

Share responsibility, give ownership but stay accountable.

Bridging communication between stakeholders and the team.

Business stakeholders/Product owners are less technical in nature then developers. Therefore when communicating with them the Tech Lead will need to be unambiguous, clear and precise to bridge that gap.

As a Tech Lead, you should always be available for your team;

  • for questions
  • for support
  • for guidance
  • to make decisions
  • to mediate

Advocate for Change

Be positive, when a process is slow or cumbersome try and make it better. One way to achieve this is by Observe, Orient, Decide and Act.

Observe the pain a process causes everybody else on the team. Adopt a state of mind that continuously wants to improve a certain situation. The Japanese call this “Kaizen”.We want to improve efficiency and happiness of the team and the delivery of a software.Highlight issues that prevent good teamwork thorough eg. retros, team meetings etc.

Work through Failure and Success

Things will fail. Don’t be afraid but be prepare for failure, it will be easier to cope with it.

When things fail, don’t look for someone to blame. You are the Tech Lead. Take responsibility and use your energy to fix the problem at hand and learn from it. Of course, don’t fix the same bug twice. If you need to fix the same bug twice, then you made a wrong decision.

Learning from failure, will you make better decisions in the future.

Celebrate success

When the team has a sense of achievement, they will be happy and motivated, to be the best they can be. It’s important to celebrate small achievements, like a successful sprint, completed features or even choosing a team name.

Stay Technical

A Tech lead has a lot of non-coding responsibilities, but it is very important not to neglect the hands-on technical activities:

  • Write code.
  • Do code reviews and have your code reviewed.
  • Insure a technical vision exists and is shared by the team.
  • Keep an eye on the evolution of the code.
  • Remember non-functional requirements such as networking, security, deployment and consistency’
  • A united front on requirements gathering will help the team and make a happy business.

Surround yourself with other Tech Leads

It presents an opportunity to learn from your peers: how do they provide input for their team and how do they divide their time between the different responsibilities of the role.

Embrace cultural differences

Diversity is invaluable. When working with teams in different time zones, this becomes even more valuable as it enables asynchronous communication and broadens the potential answers. Everybody is part of the team and everybody’s opinion should be valued.

Promote agile working

Tech Leads to promote agile working. Involve the business, it doesn’t really matter if you use scrum, kanban or something else, but aim for short development cycles, feedback loops, etc.

Conclusion

The team’s strength is not about, how many talented individuals are in it, but how they all collaborate, have the same passion and goals, and mutual respect for each other.