Ask HN: What can set one up for success in a Tech lead role

Inspired from the thread - https://news.ycombinator.com/item?id=14726130 where OP`s question was geared towards on how to prepare for a engineering manager position.

In a similar vein, wanted to get a discussion started on things that make one stand out as a technical lead of a team:

1. Things you wish you knew in the initial phases of your Tech lead career.

2. What are somethings that can set one up for success in the role.

3. What are the general expectations for this role - this might vary from company to company but what are the overall tenants that hold true irrespective. For ex: At my current as a tech lead you are expected to know the ins/out of the tech of the product, resource allocation, participate/influence the tech design etc.

4. And how would you recommend one prepare for a Tech lead interview.

Looking for a fruitful discussion not limited to the above points.

Thanks!

7 points | by throwaway1zz 2098 days ago

3 comments

  • muzani 2097 days ago
    There seems to be a few descriptions of tech lead:

    A. An engineer guiding the team, similar to a sports captain or a military team lead.

    B. An engineering manager expected to write code during slow hours.

    C. A superstar expected to give input in meetings and handle some of the project management and task distribution.

    A is acceptable. B and C are not. I'd say the first thing you do is check whether it's B or C and turn down the role if it is, or convince them to use A.

    Engineering often involves two types of work - managing and making. Managing means you need to always be available, sometimes all waking hours. Making means you are in a state of deep work, blocking off all distractions. These two do not go well together. If you take both jobs, you will do a terrible job at both, because they conflict with one another.

    If I could hire one programmer, the first would be a full time programmer. If I could get two programmers, the second would be a full time manager, handling things from bug reports, clients, customer modeling, fundraising, technical meetings, project estimates, cutting down features, business logic, architecture, database design, and so on.

    If you want to do type A, nearly everything should be under the role of a separate manager - documentation, SDK usage, architecture, designs. A tech lead is simply responsible to keep the manager up to date, and maybe handle things like deciding on arguments between someone and the manager.

  • iends 2098 days ago
    I imagine "tech lead" means a lot of different things to different companies. In my current role as a tech lead, I also have management responsibilities and conduct 1-1s, do performance reviews, write code, write requirements with the product team, and do software architecture for the service I maintain.

    Formerly, I was the most productive developer on the team and solved the hardest problems. Now I spend 30%-40% of my week in meetings and try to avoid taking the big hard problems because I have to context shift so frequently. I'm only on call every 5 weeks but if things go sideways (as they sometimes do), I'm usually the one woken up in the middle of the night by the person who is on call for help. There is another top developer on my team who is now the superstar who has taken my place.

    I've only really been doing this for a year or so, so I don't have much advice. I doubt I get compensated for the amount of additional stress I have. I've been debating on forcing the issue, but I do make quite a bit of money in a LOC area.

  • wallflower 2097 days ago
    For point 2 and 3, like a broken CD, I always repost a link to this excellent article about what a senior engineer really does. If you haven't read it, drop everything and read it right now.

    https://allarsblog.com/2018/03/16/confessions-of-an-unreal-e...