Hacker Newsnew | past | comments | ask | show | jobs | submit | managementthrow's commentslogin

I think you're underestimating how much work there is at the management level, especially in larger organizations. When management is doing their job, it won't be visible to you or your team. Things will just "align", and work well - but if things are moving smoothly in an organization with multiple teams, your management is working well.

There is a lot of systems thinking required in managing team structures, interfaces between those teams, managing communication between teams, hiring, setting technology standards & architecture, and so on (review the rest of this thread).

I do agree with your thesis though - a manager should be highly technical. I just don't think you can depend on their contribution to features & deliverables. Not because the work is "below" them, but because Engineering Management is a support role and should NOT need to choose between an IC-type task and helping unblock/support a member of their team due to a deadline :)


Management feels low value sometimes - it's hard to quantify your contribution. At first, I felt a lot of imposture syndrome and wondered if management could be automated. Now I know soooo differently.

Having worked as a manager for a year now, I can say:

It's way busier than you know!

There's a lot of work that happens behind the scenes to keep everything going. The better your manager is, the more invisible this work will seem to the team.

I think this is sort of like asking: what does a coach even do in sportsball? They're not a player, why not just have the team do their own thing?

It's a different layer of the system that requires a lot of systems thinking and people skills. Here is a list of how I spend my time:

- Making sure the right people have the right opportunities to solve the right problems

- Coaching individuals on my team on career development

- Helping to define organizational topology/structure and interfaces between teams & roles

- Manage expectations of those outside the dev team

- Proposing & maintaining process documentation

- Helping define organization culture & maintain it

- Hiring & Interviewing

- Architecture, tech debt, system vision, and helping the tech leads make the business case

- Facilitating communication between teams & acting as a shield for my team, so that they can maintain focus

And then there are things that aren't officially my responsibility, but I end up doing because I do what's needed:

- Jump in to help facilitate the team through an incident

- Act as scrum master / agile ceremony facilitator

- Produce Roadmaps & help define work/user stories when there is no Project/Product Manager / Business Analyst available

- Troubleshoot production issues

And I know there is so much more. To be honest, I would NOT have enough time to do everything if I spent 80% of my time coding. I'm lucky to get 5-20% of my time coding in!

I think the original poster should try Engineering Management for a while to see how busy they get with non-coding tasks.

Competencies you require to be an Engineering Manager:

- Agile/DevOps/DevSecOps/Continous Delivery/Modern Buzzwords

- Systems thinking

- Organizational Design

- Process design, including things like Lean, Six Signma, Toyota, etc.

- Business strategy

- Recruiting

- Mentoring

- Coaching

- Public Speaking

- Written communication

- Product Engineering

- Infrastructure Engineering

- Negotiation & facilitation of disputes

- And the list goes on!

A really good book I recommend to try to understand the systems thinking required for management is:

An Elegant Puzzle Systems of Engineering Management By Will Larson


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: