top | item 18356755

(no title)

jimejim | 7 years ago

"We don't let managers code where I work."

"...ended up with managers who slowly lost their technical skills and essentially fossilized, and couldn't make rational tech decisions"

There's a connection here. A technical manager can't make reasonable tech decisions unless they do some tech work, but perhaps we just need to be more clear that what you want is a pure project manager to check off boxes.

I think a good tech manager still respects a bottom up approach most of the time, but should have enough experience to push back when the group is steering in the wrong direction. A generic project manager isn't going to do that.

discuss

order

jkaplowitz|7 years ago

I've had a primarily technical career so far and am working on switching to engineering management in the foreseeable future.

Once I'm done with that switch, I don't want to be frequently making technical decisions, rational or otherwise - that should be the job of the tech lead on my team, with input from everyone else.

I will, of course, need to remain technical enough that I can understand whether my tech lead is making good decisions, as you say. I'll also need my team to respect my credibility enough to know that I relate to what they're dealing with, and to be able to effectively keep them unblocked.

But none of this requires sustaining continued technical contributions within my day job past the initial transition period, at least not once the company is above a certain size.

One of the best managers I've ever worked under (indirectly) was not technical and didn't pretend to be. What she did know was people and organizations.

When have you ever heard of a large org making a re-org to solve real problems after substantial consultation and with anything close to universal buy-in? She managed that, and well enough that she correctly used arguments from the rank and file to explain the re-org to other parts of the company.

That's the kind of mentor I'll want to learn from as a manager.

PopeDotNinja|7 years ago

> I will, of course, need to remain technical enough that I can understand whether my tech lead is making good decisions, as you say

A lot of stress has been created for teams I'm on by semi-technical managers chiming in. By telling yourself you'll remain technical enough, I'd encourage you to define what that actually means. Thinking you know stuff that you actually don't is going to be a huge pain in some one's ass.

I once had a boss who kept pushing for us to to do things in a certain way using a remote API, but the API client didn't support the features needed to do the things my boss insisted we use. The boss wouldn't allow for a discussion on extending the API client because he was 100% certain he was correct when he was in fact 100% wrong. I started looking for a new boss after that.

pm90|7 years ago

> One of the best managers I've ever worked under (indirectly) was not technical and didn't pretend to be. What she did know was people and organizations.

I don't mean to create a debate around sexism in the workplace, but could this be because in general in the US, we expect males to have a big ego while for women its OK to be not have one? As a male, I've had trouble with my ego getting in the way pretty often but I try to recognize that and be better about it.

therein|7 years ago

> "We don't let managers code where I work."

That leads exactly to the situation you described below.

> "...ended up with managers who slowly lost their technical skills and essentially fossilized, and couldn't make rational tech decisions"

I recently left my job at a respected social network over my new manager lacking the proper technical skills yet not accepting more reasonable solutions.

Case in point: imagine you have an API endpoint you normally hit with your service, periodically. We make a GET request to this endpoint but it also supports POST. The parameter sent is q=<some_long_string>.

It comes to my attention that this long string can get over 1MB long, at which point it causes issues with our service.

I bring up in a meeting that we should just POST to this endpoint instead of doing GET at all times because the data could be larger than 1MB at times. Makes sense, right? Well, my manager without the proper technical awareness basically pushed for us to check if the query is larger than 1MB and POST if and only if it is larger than 1MB.

I gave my two weeks a week after that and made it very clear to the upper management that this manager was the reason I was leaving and I felt like I was being stifled by having a manager like this.

ilovecaching|7 years ago

But your manager was doing what I said he shouldn't do which is butt in on technical decisions. You should have talked to your skip and your team mates about your manager stepping over the boundary. You should have also told your manager you wanted to switch teams. There are plenty of other managers who don't work like that.

spookthesunset|7 years ago

As others have said, a good manager shouldn't have got involved at all with this discussion beyond "figure it out!". Technical decisions aren't their job anymore. They are there to solve people and organizational problems now--not technical problems.

ilovecaching|7 years ago

We don't want managers steering anything. That's either the job of the group or the tech lead. The manager is supposed to manage the team the same way a managers manages a baseball team. You get the right people, give them the right tools, and let them play the game.

therein|7 years ago

Exactly, this feels right to me. A manager's job should be to keep track of things but without micromanaging too much (a good example was checking being able to build your team's code on occasion etc.) and also providing the tools and protection they need from upper management so that the team can play the game.

In my previous team, I essentially had the tech lead role in the team but that role wasn't acknowledged with a title, although the entire team was very aware of it.

Ended up getting too much friction with the new manager and I left.

I got a job almost simultaneously as I left. It is much shorter commute, it pays more and it is more exciting. However it is unfortunate I had to exchange 3.5 years of rapport I've built at a place for these.

ilovecaching|7 years ago

The role of a project manager is to have someone who can represent the user. The project manager should be talking to users, soliciting product feedback, getting bugs filed, and feeding this to the team.

The role of a manager is to manage the people on the team. That means helping them grow their careers, help them switch teams if they find something that would be a better fit, promote the teams work, unblock people, give feedback on how team members are communicating, manage meetings and fill in for team members so they can spend more time coding that sitting in meetings.

Basically a people manager is like a boxing manager. He gets the champ into shape, puts him in to the ring, and cheers him on. When the champs not fighting he makes sure the champ can focus 100% on training.

ianbicking|7 years ago

I think you mean "proDUCT manager" – a project manager usually focuses on schedule, balance of work, bottlenecks, and maintaining (but not defining) priorities.

It's pretty common for an engineering manager to do project management, and to some degree it's necessary: people management and priority management are closely related.