Thursday, 5 August 2010

What a good manager should know

Before starting this blog I would like to make it perfectly clear that it is not aimed at any individual or any organisation that I have worked with. It is intended to make a general point with no specific reference to any specific individual(s).
I’ve had this discussion several times with friends and colleagues in the past, and it came up again recently with a work colleague. The discussion revolves around the issue of how much knowledge should a manager need to know about what his team does, in order to be an effective manager. In most cases, a manager will have progressed up the career ladder in the line of work in which they subsequently find themselves as a manager. So taking my own line of work within software development, a typical career path may be:

· Trainee software developer
· Software developer
· Senior software developer / Team leader
· Software manager

So it’s fair to say that by the time a person becomes a software manager, they should have a pretty good understanding of what their team does, the roles and responsibilities of the team members, and the key skills and knowledge that are required.

However, I have come across several managers who lack this essential knowledge. They are managers pure and simple. They do their team’s appraisals, manage the team’s budgets and Performance Indicators, but lack the knowledge specific to their team. They are to all intents and purposes, general purpose managers, with no real knowledge of the specialist skills and expertise of their team. They could be placed into any team, anywhere, and manage that team – without ever knowing exactly what the team actually does, or how it does it.

I’m not saying that you necessarily need to have an in depth understanding of what every team member does, that would be wholly impractical. That is why you have team members who have those specialist skills. It is their responsibility to understand the area in which they work in as much detail as is necessary to perform that role. Equally though, this does not imply that the manager can delegate that knowledge entirely to the team either. While the team members may perform their allotted roles, using whatever specialist knowledge they need to do so, the manager at the very least needs a basic understanding of those roles and responsibilities.

One of the roles of a manager is to provide direction and make decisions. How can you make decisions without understanding what your team does? How can you know what is achievable and realistic, or what is even possible?

While not every software developer will make a good software manager, or even aspire to be one, the best software managers in my experience have been those that have progressed up their chosen career path. One obvious advantage of this route to management is that you also have the respect of your team. They know you have done the same or similar job to them in the past, and can talk from experience. They know you understand their daily challenges, and can sympathise with their problems. They know you understand their role and what it entails, as you have done it in the past. So while you may have forgotten some of the detail of how to perform that role, you understand what it involves from a high level perspective. Never underestimate the value of respect within a team, particularly if you’re the one who is trying to win it!

In my opinion, to be an effective manager, you need to understand the various roles and responsibilities of your team, preferably from hard won experience. This will ensure you can make informed decisions, and that you have gained the respect of your team.

No comments:

Post a Comment