Throughout my professional career (a bit more than 10 years now), I've worked with about 20 managers at various levels (from the team leader to the small company CEO). Among them, most have been between average and good, 5 were truly abysmal (i.e. actually counter-productive and detrimental to the project), and 2 were really outstanding. When I was a junior I used to think that managers were all representatives of the Dilbert Principle (and indeed I had seen at least one good example). As time made me a tad wiser, I found that not only management requires as much talent as development, but truly good managers are even more rare than truly good programmers.
So just for the sake of feeding this blog, here's a short list of what I believe are key signs to a good manager (and to a bad one) :
- A good manager will remove obstacles and try to help you working more efficiently. He will keep his door open, ask what problems you encounter and will actually try to solve them. If the problem is yourself, so be it, but before reaching this conclusion, other solutions will be tried. A bad manager will rather coerce you into working as he thinks you should, and will not want to hear about your problems (the typical answer will be something along the lines of "if you can't do it I'll go find someone who can). By default, he sees you as a slacker (actual example : at the beginning of a worldwide sports event spanning several weeks, a company-wide mail sent by the CEO, reminding us that everybody should be there a 9AM and should not leave before 6PM, so don't you people think of leaving to watch the game on TV, Big Brother is watching you).
- A good manager will follow what he says with actual actions. A bad manager may collect input from his staff, sometimes very thoroughly, but won't act on it. (actual example : a 3h long meeting, with all recriminations scribbled on papers tacked on large boards. In the end, the manager just took a photograph of the boards, saying "I'll study this", and nothing ever happened).
- A good manager actually has a clue about which management techniques work and which don't (generally comes through experience). A bad manager will blindly try to apply whatever buzzword he may have heard of, pretty much fitting the "if your only tool is a hammer, all problems look like nails" stereotype.
- A good manager will actually welcome comments and remarks on his decisions, even negative ones. He will accept debate and will even expect it, even though he will have the last word, because that's his role. He won't have a problem with recognizing he is wrong, as he knows he can't always be right. A bad manager will feel threatened by differing points of view, and will perceive them as a challenge of his authority. Basically, a good manager is self-secure, a bad manager isn't, and tries to prove otherwise by abusing of his authority.
- A good manager tries to entice good behavior, a bad manager only punishes bad one. For instance a good manager will publicly praise you for an achievement. A bad manager will publicly scold you for a mistake (actual example : a manager proudly exhibiting at every weekly team meeting a chart showing the developers with the highest number of assigned bugs).