Adventures of a Tech Lead V

INTERSECT helps businesses create and deliver exceptional digital products that marry business objectives and user needs. Learn more.

At Intersect we pride ourselves on delivering quality products quickly. A large part of our success is attributed to the people who lead our project teams. This series takes a look at common scenarios a new or seasoned Tech Lead may encounter.

Wait, what’s a Tech Lead?  

A Tech Lead is an individual who, in addition to being a developer, frequently needs to wear several hats and play a different role during the project lifecycle. Factors such as the nature of the project, the phase of the project, and the project team composition impact the type of hat they may need to wear. A Tech Lead may not be the most senior engineer or the best coder, but in order for them to be successful, they do need to be a good listener and communicator and adapt to changes in a project. They are responsible for the project’s technical delivery and are accountable for guiding the team to the finish line. Being a Tech Lead does not always come with a formal title. It is a role that an engineer can play, which may be temporary due to the state of a project, or spontaneous based on a particular situation. Therefore, Tech Leads may not necessarily have the authority to influence others, or expect a higher paycheque, but leading a project is a tremendous opportunity for personal and professional development. The Tech Lead role can be a way for an individual to gain more recognition within their organization, which may become a stepping stone into management or leadership-oriented roles.

About this series 

Articles in this series feature observations that have been made and shared throughout weekly Tech Lead sessions that we participate in at CoreLogic Intersect: lessons we learned from personal experiences, books we read, or strategies that have worked in the past. You may choose to read this as a guide, some stories of wisdom, or simply as an introduction to your journey as a Tech Lead. Please keep in mind that the role of a Tech Lead may differ from company to company, but there are fundamental responsibilities that are shared amongst everyone.

As Camille Fournier stated in her book The Manager’s Path: “being a tech lead is an exercise in influencing without authority.” How do you sell your team’s idea to other teams, or convince your team to do what needs to be done in order to reach the finish line? It is no easy feat, and how one prepares for this role is critical as the path of the Tech Lead can often be full of surprises and unpredictability.

Scenario V: Your project manager has presented you with an urgent, mid-Sprint change request. What do you do?

Analyze the situation

Is the request feasible? Is there enough time to complete the task? Are there any technical restraints? Can the solution be split up into multiple stages of implementation? What part of the request is urgent? Is it possible to apply a quickfix first to patch the urgent request and implement a sustainable solution later on when we have more time?

Document the request

It may be tempting to skip this step due to the urgency of the situation and the fact that it is rare to find people who love tending to administrative due-diligence, but the most important thing to do first is to make sure that requirements are completely defined and documented (likely in whatever Project Management tool you are using), with an estimated amount of effort. Even if you will be the one to tackle the issue, it is helpful to leave a paper trail of work that was completed. The ticket may also describe the business change in detail, and why the decision was made. It will come in handy for the quality assurance (QA) team or the person performing a code review and double-checking the solution. It is also good to keep in mind that estimated engineering effort may not include the time for code reviews, any change requests to the change request that may come in, any possible broken tests introduced with the new, urgent work, and the additional effort that will be required at the QA stage.

Delegate the work

Once everything is defined and estimated, the next step is to assign the task to the person most familiar with the section of the codebase, unless the Engineer is currently overwhelmed. If that person is you, and you have the time blocked off, then go for it. However, be careful not to overwhelm yourself with coding work, because the number one priority for a Tech Lead is to unblock your teammates, which may be making sure they have enough well-defined and unblocked activities to work on.

If there is no obvious answer in seeking to determine who should work on this urgent change, you can also present it as a challenge to the team, and someone may be eager to accept it. Just make sure they have everything they need to get the work done without any distractions and it does not require an exorbitant amount of time for the person to get up to speed with the context required to complete the work.

Every adventure poses a new set of challenges

Every team and every Tech Lead may have their own set of challenges, so feel free to share your stories with us. More scenarios will be introduced in the upcoming weeks, let us know if there are any particular experiences you would like to read about.