Live data from Hacker News

Ask HN: Advice for a new and inexperienced tech lead?

news.ycombinator.com

161–170 of 259 posts

Re: Ask HN: Advice for a new and inexperienced tech lead?

#161
post #36

Few things I would like to say: It will no longer be about you. It will all be about your team. Make sure you create a great team, nurture them, train them, teach them how to think critically (in doing so yourself). Ask your team to write out everything they plan to do before they actually do it. Reason with them on what they wrote and what approach decisions they plan to take. Teach them to think long term. Writing…

I would say you need to stand up for your users not your product. A gorgeous code base that doesn't do what your users want doesn't help anyone.

In my opinion they are the same.

If you stand up for your product, you are standing up for your users, or your clients if that's a less ambiguous term.

For some teams, for example a lot of teams in Google and Facebook, the end-users are often different from the Product's clients; the client of Google's Chrome is Google's empire. The programmer that added the X-Client-Data header undoubtedly improved the product, at least short-term-business-wise, while actively harming it for end-users. Someday end-users may leave if they continue to erode trust, but for now it's a boon for the Product.

Edit: Please don't work on those products. Please develop products that respect people. If you develop trust, and actively respect people; I posit that a lot of people will opt-in to reasonable analytics, and even advertising. If many don't now, they might when the dust settles.

Re: Ask HN: Advice for a new and inexperienced tech lead?

#162
First of all you need to figure out if you're a "tech lead" (informal title, no reports or authority) or a "dev lead" (formal title, with reports and authority).

As a former Google tech lead (and I know this sounds like a YouTube parody): my advice is don't be a "tech lead" for long. Either be a dev or move into management. Make up your mind. Google "tech lead" is defined above.

As a tech lead in such informal position, you'll end up doing 2 jobs and you'll eventually find that the level of effort required is not commensurate with compensation. You can make much more and have a faster career progression as a manager. You can make the same money with less effort and headache as a dev. Your IC career won't move any faster just because you're a "tech lead", indeed the opposite could be true, because now a non-trivial fraction of your productive capacity is taken up by intangibles which are very difficult for an IC to articulate the value of come performance review time. Being a tech lead makes no logical sense whatsoever, at least not at Google, unless you're aiming for a manager position in the near future, and you need to demonstrate your "leadership qualities".

Other companies may differ, of course, but I bet it's like that at most places that have "tech" leads. In contrast, at Microsoft there's "dev lead", not "tech", and it's a frontline manager position, with reports and authority, and with the aim to move upwards on the management ladder.

Google-like informal "tech lead" is not even a title, it's just a SWE too stupid to understand that they're basically doing more valuable work, and more of it, for the same money.

Re: Ask HN: Advice for a new and inexperienced tech lead?

#163
I think the most important aspect of the job is making sure that what you and your team plan will work. Try to keep things simple and use well tested technology. If you are attempting anything bleeding edge, do a quick proof of concept to make sure there are no gotchas. Sometimes team members want to use something novel to solve a problem, and they tend to underestimate the risks (short and long term). Keep it simple. Deliver what you say you will.

Re: Ask HN: Advice for a new and inexperienced tech lead?

#164

One of my favorite parts of the Tao Te Ching is this: A leader is best when people barely know that he exists, not so good when people obey and acclaim him, worst when they despise him. Fail to honor people, They fail to honor you. But of a good leader, who talks little, when his work is done, his aims fulfilled, they will all say, “We did this ourselves.” Your role is now defined by what your team needs you to be. L…

I have this pinned to my wall by my desk. It reminds me how far I have to go.

Re: Ask HN: Advice for a new and inexperienced tech lead?

#165

Few things I would like to say: It will no longer be about you. It will all be about your team. Make sure you create a great team, nurture them, train them, teach them how to think critically (in doing so yourself). Ask your team to write out everything they plan to do before they actually do it. Reason with them on what they wrote and what approach decisions they plan to take. Teach them to think long term. Writing…

I like the part about writing things down. There is a lot of mental organization that needs to happen when you write it down. It also forces you to make decisions.. which is also hard.

The only time I write anything with a pen and paper now a days, for the most part, is when I do 1:1s and check ins with my team. No computers for me. If I need to schedule something it comes after. The team member gets my full attention, no phones, Slack, email, or anything getting in the way.

Re: Ask HN: Advice for a new and inexperienced tech lead?

#166
I totally recommend you read/listen to the Phoenix Project (https://www.amazon.com/Phoenix-Project-Helping-Business-Anni...). It's heavy on the DevOps slant, but that's a good thing!

- Treat your team like their adults, not children, and respect them like such.

- Also, be transparent and clear with them. Hiding things or beating around the bush just wastes everyone's time.

- Give them autonomy to explore new tech when they get the itch, and you'll likely get better results and keep your team active and engaged.

- Embrace the blameless culture. Failures and bugs happen. Being hostile about it means people are more likely to hide stuff and not be up front about things. Not to say it shouldn't be addressed if it becomes a problem, but everyone's going to mess up sometime. Also, it's your job to make sure that any heat from on-high doesn't come down on them.

Re: Ask HN: Advice for a new and inexperienced tech lead?

#167
Remember this:

* Code in production = value. *

And the following (I am not the original author):

Ship small (seek the shortest path to show and deliver value to your customers)

Ship imperfect products (perfection is the enemy of done)

Ship for your users, not for you

Ship every day (it creates momentum!)

Focus on finishing (shipping), not starting

A shipped product is worth a thousand of blog posts

Ship first. Then iterate

Re: Ask HN: Advice for a new and inexperienced tech lead?

#168
Understand what are the things that you should stop doing, and what are the new things that you should start doing. What made you a great contributor and put you in a position to be promoted is not going to necessarily make you a successful tech lead going forward. You need to start optimizing your work around different metrics now. How much you produce with your own hands becomes almost irrelevant, and how much your team produces as a whole, and how quickly people on your team grow becomes paramount. Another aspect is that you should be managing up and sideways, be a voice and an ambassador for your team within your engineering organization. Be on the lookout for what is going on and provide air cover for people on your team.

Re: Ask HN: Advice for a new and inexperienced tech lead?

#169

Few things I would like to say: It will no longer be about you. It will all be about your team. Make sure you create a great team, nurture them, train them, teach them how to think critically (in doing so yourself). Ask your team to write out everything they plan to do before they actually do it. Reason with them on what they wrote and what approach decisions they plan to take. Teach them to think long term. Writing…

I think your advice is great for tech leads at big companies, but for tech leads at startups, I have to disagree with the point about "Work for your product - not your company."

At a startup, the business objective has to come first and the engineering team has to keep the bigger picture in mind. "Long-term stability and robustness" won't matter if your company is dead. Build for the short-term and build fast while you are figuring out product-market fit. Move fast and break things.

Post reply on HN