Signs of a Good Manager

Pretty decent topic and thread on Hacker News on what makes a “good” manager – some pretty decent takeaways and reminders, if I’m honest. Here are some good ones:

A great manager is at the service of their team, the team is not at the service of the manager.

The irony is that you don’t really notice a great manager. Their job seems like a walk through the park, and you have a “I could do that job easily” feeling. That’s because a good manager shields you from all the shit that’s going on, so you and your teammates can concentrate on your job.

If you’re in a project where shit hits the fan every time, where you have to extinguish fires, overwork because of deadlines, etc. then this is the managers fault.

I also noticed that the atmosphere within the team and the company, is always a reflection of upper management. And there is not much that can change this.

via koonsolo

Totally agree with this! The best managers that I’ve had historically are the ones that not only were at peace with their role as “shit collector” but enjoyed extinguishing the fires for their team.

They were adept at keeping the team focused but also balanced this with providing copious communication to the team about what was going on, maximizing transparency at all times.

Shielding the team from “the shit” isn’t the same thing as keeping the team “in the dark” – you can actually do the former without the latter taking place.

Good list here by mikeruhl:

  • They get you what you need to do your job.
  • They shield you from product owners and stakeholders by meeting with them and giving you only the information you need (unless it’s necessary you meet with them).
  • They advocate for you and your work.
  • They give constructive feedback and insight to help you improve.
  • They never try to stand between you and the advancement of your career.

Here’s some good tidbits via mikekchar:

With a great manager you get lots of work done and feel good about yourself and your accomplishments. You get the right amount of recognition for your work (not more or less than you want).

You understand what’s expected from you and you feel free to express yourself.

The really difficult thing about this question is that it’s not a 1 way street. If you don’t work hard and have a good attitude, it will be hard to achieve anything.

You need to have realistic expectations of how others will perceive what you do. You need to be able to balance the needs of others with your own needs (not too selfish and not too selfless).

Your manager can help you with those things, but they can’t actually do it for you.

And this is great too, via someone who’s just finished their 5th year as a CTO:

Communicate context as high level and as complete as possible.

If you say “I want that button in red” when you really mean “I want to increase sign-ups on this landing page”, then what you REALLY mean and want to communicate is that you want as many customers as possible to find your valuable product.

Letting the team jump in with own ideas, even if you think you already have the best solution will make them grow in responsibility, accountability and self-confidence.

Likewise, ideas like a company/team “Mission” and “Strategy” are 90% used in bullshit contexts, but articulated correctly and repetitively, they make sure people run into the right direction, even if you don’t follow every of their moves.

It’s true: Things like “mission” and “strategy” can become utterly useless if it’s not actually useful.

Bprasanna listed out 10 things:

People leave managers, not jobs.

Consequently, a good manager:

  1. Make you feel comfortable in expressing your inputs.
  2. Bats for you in upper management without you knowing a bit of it.
  3. Pushes you for taking up bigger assignment even if you don’t feel confident.
  4. Never says immediate “no” for your ideas. Takes time & gives a thorough feedback.
  5. Keeps you informed about your progress in 1×1’s.
  6. Is open for feedback.
  7. Keeps things cool even if his/her back is on fire.
  8. Never micro manages.
  9. Always makes sure you get your credit & visibility for the contribution you have done.
  10. Has a very good understanding of stack/technology/project you are working on

This was a fascinating idea by wastedhours:

I read a great piece a few years ago outlining the notion that everyone should have two managers: One performance, and one pastoral.

Often times those two elements rarely overlap, and often contradict.

Definitely something to chew on. Module0000 wrote an essay:

Great managers do a lot of things…but I’ll talk about a couple of them that matter to me at the moment.

Great managers give clear expectations. Even if you operate autonomously, they still provide you guidance on “this is what I expect, and this is how and when you should communicate <X> to me”.

Great managers also make time to clear up any doubt or uncertainty about a task. You should never feel embarrassed or afraid to ask a great manager for clarification or direction, their job is to give you those “good vibes” that make those conversations easy for you to start.

Great managers never onboard you by saying “you’ll figure it out”, or “welcome aboard, you’ll find everything in the wiki”. Great managers show you the docs, answer any questions you have about using them, and initially shepherd you towards where they need you to end up. This plays into the “clear expectations” quality I mentioned above.

Great managers (sometimes subtly) pair you with great teammates. They initiate cross-training themselves, and not by telling you to shoulder your way into someone else’s domain. Sometimes they do this by making the other member(say, a DBA) responsible for a task they cannot do without your(the programmer) help.

They might make the DBA responsible for documenting your help, or vise versa. This is subtle cross-training, where neither role feels like they are being pushed out or prepared-for-replacement by the other. Instead, you should end the assignment feeling like teammates that both managed to learn something new, from an experienced professional(the other person).

That’s my two cents.

For what it’s worth, I didn’t realize I had been a bad manager, until I went to work for one. As I found myself thinking of “geez life would be better if he/she did <XYZ>”, I realized those were things I didn’t do myself in the past. That made me really appreciate what life in the shoes of my reports must have been like.

I didn’t set clear expectations, it probably felt like a bit of a mystery gamble to the people who worked for me. I hate that for them, and no one could have convinced me I was doing it wrong – until I had gone through this experience myself.

It keeps going; I love HN.