Live data from Hacker News

Ask HN: Learning tech leadership vs. growing as a developer?

news.ycombinator.com

1–10 of 15 posts

Ask HN: Learning tech leadership vs. growing as a developer?

#1
I work in a startup which is growing at a steady pace. We are competing with some of the other companies in the market with similar revenue. Started working here right after college and was learning a lot of things on my way. I have worked on some challenging problems which make me learning and advance as a developer. In the past 4-6 months though, the shift has all moved to not just delivering release but to manage them end-to-end. We don't have any tech leads in the company and this is an expectation from individual developers like me, about 1 to 4 years into the industry to run the project, not just develop them which includes talking to customers, defining a plan, and executing it while also developing it usually in team of size not bigger than two.

This is the only workplace I've worked at yet. And I'm confused if whether to grow as a tech lead yet when I still want to learn to better and bigger software with good architectures and good code quality. Should I take a detour and focus on learning project management?

Is this also even advisable to learn project leadership of this sort?

Re: Ask HN: Learning tech leadership vs. growing as a developer?

#2
Both? I'm a CIO, but was first a developer. I transitioned into management from developer to a director of software development in 2003. If you're in a company like mine (and it sounds like you are) where you have to wear many hats, it'll serve you well to stay sharp on the development side while learning more and more about management.

Unfortunately, that's going to mean some late nights for you. To stay sharp while "managing", I'd also take on software development projects by night and weekends from other companies to keep my skills honed. In our field, you constantly have to be learning anyway, so doing similar things will really help.

Have my development skills suffered from not being a full-time developer? Probably...but not that much. I can still write code which would likely equal most of the developers that work for me. That said, I'd love, at times, to have mentors from who to learn better ways. The web is my mentor for now.

I will say that staying sharp on the development side has really made me a more effective CIO. I can call bs on our vendors when a less technical CIO would've bought into their sales pitch. I can keep my employees honest and can see paths to solving issues that other CIOs might not.

So...consider both. FWIW

Re: Ask HN: Learning tech leadership vs. growing as a developer?

#3
I think code should be treated as a craft. If you enjoy it, you'll do it anyway, even if you stop doing it for a job.

If you're trying to pick a career path, you need to ask yourself why you work at all. Are you trying to be someone well known? Is it all about the money? Do you crave organizational power?

Figure out what you enjoy about work, and you might get a better idea about where to go next.

Re: Ask HN: Learning tech leadership vs. growing as a developer?

#4
The entire pitch of working for a startup staffed mostly by less experienced people is being able to transition around the wide variety of jobs easily. Getting that breadth of experience is where those situations stand out.

If you really want to hone your craft as a dev, you need a mentor. Spending more time as a dev without one is going to be a very inefficient path forward.

Also, don’t freak out too much about it. Careers are long. Especially at the beginning of them it is easy to lose sight of that.

Re: Ask HN: Learning tech leadership vs. growing as a developer?

#5
Project leadership at a small company/startup is going to be much different than at a larger company and vastly different than at a Fortune 500. The path of a PM is typically to progressively manage more complex and larger projects whether in scope or budget.

A tech lead is a different role than a PM. Tech leads should be mentoring junior devs, guiding overall solution and working with a PM from a technical perspective like being a sounding board for crazy customer ideas.

Your company is small enough to keep dabbling in the project mgmt while coding. You don't need to make any decisions, just see where it goes. You may want to suggest to management that if there are enough devs doing PM tasks spread across X projects, at some point it might help to get a PM to do the PM stuff, then devs can focus more on development.

Having done the PM role, SW Mgr role, and lead engineer role, I found the PM role the most tedious/repetitive and missed coding. The problems being solved by a PM weren't technical and that is what I missed.

It ultimately comes down to what interests you more.

Re: Ask HN: Learning tech leadership vs. growing as a developer?

#6
Have you considered hiring in someone with relevant experience? They could both help you out and provide a good mentoring/learning aspect. If you don't know 100% what good leadership looks like, it's hard to make that journey on your own.

Not saying finding such a person is easy btw, but could be worth considering?

~40 years of "total career", approximately speaking, and usual caveats re YMMV, is a long time. 3 years coding then 37 years managing/leading isn't necessarily the best balance. That is another factor to consider. Drifting from hands on tech this early could cause you problems relatively soon into your own career.

Re: Ask HN: Learning tech leadership vs. growing as a developer?

#7

The entire pitch of working for a startup staffed mostly by less experienced people is being able to transition around the wide variety of jobs easily. Getting that breadth of experience is where those situations stand out. If you really want to hone your craft as a dev, you need a mentor. Spending more time as a dev without one is going to be a very inefficient path forward. Also, don’t freak out too much about it.…

Probably offtopic, but would you mind expanding a bit on the mentor requirement a bit? Being in a similar position, I'm a little embarrassed that's not something I've considered so far and that made me a little bit anxious.

Re: Ask HN: Learning tech leadership vs. growing as a developer?

#8
Hey hey! I run workshops for engineers who want to develop leadership skills. Shoot me an email at jesse@20bits.com if you want to chat.

Honestly, it's up to you. There is no "right" answer here, although there might be a "right" answer for the company (i.e., they need you to step into a leadership position or else they need to find someone to be your new lead).

It seems like you're confusing "tech lead" with "engineering manager," because most tech leads spend a significant amount of time coding. The tech lead on a project is the person who shapes the technical direction of the project, knows all the ins and outs, and helps other people on their team from a technical perspective.

At many companies they might have 1-2 reports, often junior people who need active mentorship, but most of their time is spent on technical + project management work.

I recommend the book _Project Management for the Unofficial Project Manager_: https://www.amazon.com/Project-Management-Unofficial-Manager...

A very coarse generalization is that tech leads own the "how", engineering managers own the "who", product managers own the "what", and project managers own the "when".

At smaller companies these responsibilities naturally blur together. It also depends on the nature of the business. If the company has a big client services component with lots of custom integrations, then project management will almost certainly be its own dedicated function.

Give it a shot and see how you like it! Speak with your boss and say you're unsure of whether this is for you, but you'll give it a college try. The worst that happens is you learn you don't enjoy that type of work.

Re: Ask HN: Learning tech leadership vs. growing as a developer?

#9
post #7

The entire pitch of working for a startup staffed mostly by less experienced people is being able to transition around the wide variety of jobs easily. Getting that breadth of experience is where those situations stand out. If you really want to hone your craft as a dev, you need a mentor. Spending more time as a dev without one is going to be a very inefficient path forward. Also, don’t freak out too much about it.…

Probably offtopic, but would you mind expanding a bit on the mentor requirement a bit? Being in a similar position, I'm a little embarrassed that's not something I've considered so far and that made me a little bit anxious.

Sorry I didn't mean to create anxiousness. Don't freak out.

But basically everything we've found in rigorous study suggests that to master something you need a mentor/coach. It's not that you can't' figure the stuff out on your own. It's that you will save tremendous amounts of time by not doing so.

So one of the big weaknesses of going to work for as startup, especially as a newish dev, is that the mentorship opportunities are frequently lacking (startups have a hard time paying what mentors are worth). But this just means that you have to account for that in other ways:

- make sure your next job is geared around the mentorship opportunities

- go out of your way to develop mentorship relationships outside of work.

There are lots of very good benefits to working at startups. Just be aware of the trade off and make sure you are accounting for it in your career plan. Careers are long, no reason you have to optimize for each thing at each job.

Re: Ask HN: Learning tech leadership vs. growing as a developer?

#10
I would say it entirely depends on what you want to do. Project manager, people manager, technical lead, and individual contributor are all separate career paths -- but they can intertwine if you want them to. When I work with people on my team I take this approach:

1. Define what you want the end of your career to look like.

2. Next think about where you want to be in 1 year, 2 years and 5 years.

3. Identify skills which you can learn to help you achieve your goals for each time horizon.

4. Identify opportunities to develop those skills.

It's important to remember that your career and desire shift and that is OK. You should embrace that change.

Post reply on HN