That's what a manager should do, yes. But I think a lot of developers have had managers that don't do those things at all. And I think that's where the resentment of managers come from.
Sure, there are bad employees at all levels. I've seen plenty of bad/lazy developers in my time too. In fact I was probably on my way to becoming one when I decided I needed to do something new with myself after 20 years of coding.
Also, some of the work a manager does is invisible to the people they manage. In fact I would argue that the "good" work is often the most invisible of all the work.
So when that role, at some level, is responsible for you being able to do your work, whether you see it or not, calling it "not real" feels even more naive.
But yes, there are absolutely bad managers out there. I agree with you on that.
> In fact I would argue that the "good" work is often the most invisible of all the work.
This is just another version of the mantra often seen on HN that the "silent, behind-the-scenes" dev work of refactoring, maintenance, etc. is extremely valuable but under-acknowledged.
The same holds for all levels of an organization, whether it's the CEO or a straight-out-of-school IC, but we seem to keep forgetting this principle when presented with a new face.
Not quite.. I can see all the work my ICs do, even if others can't (to your point, which I agree with).. So I am aware of their challenges and their effort.
But my ICs don't see all my work, just like I don't see all my director's work. So it's still somewhat asymmetrical.
So it's easy to fall into that "they don't do anything of value" trap when you don't have the big picture.
I believe that this is why as a manager it's actually super important to be transparent, and where possible (and desired) provide as much of a view into my work as I can for my ICs..
Some stuff I can't share of course, but if I can, I do. Hopefully this helps everyone in the end.
In my early career, I never had any managers, we were just "the developers" and left to figure stuff out on our own..
But in the last 5 years of my coding career, I had some excellent managers who really helped me grow and do my best work, which is what inspired me to go that route myself and try to do the same for other developers who are earlier in their careers.
I will say, there actually is formal management education. It's just not often a requirement for promoting developers into management positions, and a lot of time the people who get put into those manager positions are either the least-good coders, or people who don't want the job but take it to get the promotion and (maybe) salary increase. And once they're in the roles, they are not properly trained or supported in the new skills they absolutely need to do a good job.
That's not a recipe for success... but it's also an organizational problem just as much as an individual problem.
That's very exceptionalistic (to stick with your word).
You could apply this logic to any practitioner discipline, like medicine, research, sports, construction, cooking, etc..
Of course someone with practitioner experience will be (or appear?) better able to manage people doing that work, because they understand the finer details.
But people management itself is also a learned skill, and that's where in my experience companies fall down on the training sometimes. They assume that the practitioner experience and the seniority is enough, and it's not.
Then there's the whole empathy/EQ side of things. Being a manager requires a ton of emotional labour and that's not for everyone.
I am fed up and bored to death with the perpetual tooling renaissance we are having, I love programming but career software is often anything but the good bits of programming. I am interested in transitioning to tech leadership so Im not burnt out on software bullshit and can enjoy coding on personal projects at home.
It sounds a bit like you have a good gig that you enjoy, good for you, but you can't extrapolate like you are. You are being a bit ignorant, frankly, grossly generalizing a career it sounds like you don't understand well.
And yet, I've run across countless "managers" who were previously developers, who had no credentials for management other than wanting to be a manager. Their "training" was to take some sort of corporate HR-provided course to "certify" them, and then being put in charge of other developers.
While there have been a few who weren't completely toxic, the vast majority had no idea what they were doing, struggled mightily, and had very unhappy teams.
> You are being a bit ignorant, frankly, grossly generalizing a career it sounds like you don't understand well.
Yeah, I do understand it well. I had some management experience early on, and was actually good at it, but I hated it because it made me stop doing actual software development.