A tech lead role might not be the same from company to company, not even from team to team within a company, but it is expected tone both a technical position and a leadership role. So, it can be described as a set of responsibilities that any engineer might take on on once they reach the senior level. It may or may not include people management.
A common misconception is that the tech lead role should be given automatically to the most experienced engineer (the one who can handle the most complex features or who writes the best code).
As a tech lead you can continue writing code but you will have extra responsibilities such as:
- representing the group to the management
- make independent decisions for the team
- handle difficult management and leadership situations
- plan for future delivery
- partner effectively with other areas of the business
- deal with details of the management process
- delegate work effectively without micromanaging
- focus on the team productivity
Being a tech lead is an exercise in influencing without authority. His main roles are:
- take a wide view of the work so that you keep the project moving
- have a good sense of the overall architecture of the systems and a solid understanding of how to design complex software based on the business requirements
- project planner – find efficient ways of breaking down the work so the team can work quickly (getting work done in parallel)
- write code, but not too much. raise issues early and delegate work