Skip to main content
 

Micromanagement

8 min read

This is a story about getting promoted at work...

White collar worker

I can wear pretty much whatever I want to work. Some of us techies wear jeans and t-shirts. Some people wear fashionable trousers and tops. I wear a white collar. It sends a message: I'm an idle manager, and I'm not going to roll up my sleeves and get myself dirty.

How do you get a promotion once you have become skilled at your trade? Once you have mastered your chosen profession, how do you keep growing in your career?

A handful of software engineers, programmers, web designers, hackers and people who are generally skilled in the dark arts of making computers do magical things, will have the good fortune of being promoted into management positions. It is not a logical progression.

One of my friends who is a startup founder talked about how "lucky" his engineers were to receive a good salary for their job. He talked about the wages that he pays as if it were an act of charity, and his employees were fortunate to be able to write code and get paid.

I can only imagine that people who shuffle paper around their desks and sit in tedious meetings all day long, are jealous of the people who actually get to make stuff. I can certainly vouch for my frustrations at being away from the coal face. I'm so bored, with nothing to do but 'manage' a team. Management is horrible.

I'm in an interesting position to be able to compare myself with my peers. On my current project, there are 8 teams who are working together to deliver the final end product. This means that I have 7 other managers, all of whom started work at a similar time to me, to directly compare myself with.

Myself and the other 7 managers deliver our work in 2 week chunks, with a demonstration to the customer at the end of it. We demonstrate the work that we have completed in the preceding fortnight. The customer then either accepts that the work is up to the expected standard, or rejects anything that they are unhappy with. Also, it's quite possible that not as much work as was expected was delivered. Failing to meet your delivery commitment, and missing the deadline, is something that is very common on IT projects.

I've worked on the project for about 14 weeks: 7 two-week chunks. The team that I manage has delivered on their commitments for 7 fortnights in a row, and the customer is very happy with everything we've done.

The other 7 teams have consistently missed their deadlines and have a number of things that they have demonstrated that have not met the customer's expectations.

So, what's the magic trick? What's the secret behind good management? I must be managing the hell out of the members of my team, right?

Wrong.

I've been developing software for the best part of 20 years, and my biggest problem is with micromanagers. Managers are so keen to be seen as adding some value, that they can't help themselves from getting involved with things that they're absolutely clueless about.

IT projects used to be run by project managers. A project manager is a jerk with a clipboard who's attended a week-long training course in PRINCE2 (Projects in Controlled Environments) and has then gone tear-assing around town, botching every project they've ever laid their hands on. Project managers are a pointless waste of space.

So, along came a practice called Agile software development. From Agile came the idea of a Scrum Master. A Scrum Master is supposed to be one of the developers, who knows the Agile methodology and can help to organise the team. Scrum Master is not as job... it's a role that one of your existing development team has.

Unfortunately, that left a load of useless project managers on the scrapheap.

All the project managers then paid to go on a week-long training course to become Certified Scrum Masters. They then returned to the same companies where they had been screwing up the IT projects before, and demanded that the projects hire them as "Scrum Managers" to do full-time "Scrum Management". They then went about doing everything they'd always done, just the way they did it before, and making a balls up of every IT project.

I'm a bit different. I crossed out the words "Development Manager", "Architect" and "Software Developer" from my CV and resubmitted it to an employment agency with the words "Scrum Master" substituted. I then had the shortest, easiest interview of my life, and was immediately hired to be a 'Scrum Manager'.

Since then, I cancelled every meeting that my team were expected to attend, banned anybody from approaching my team members directly, and then left them alone. I left my team all alone for 14 weeks. I don't hassle them. I don't try to 'add value'. I don't try to get involved. I just let them get on with things.

So, am I slacking? Well, if my team escalate an issue to me, I work to try and get it resolved, but otherwise I leave them alone. If my team need something they don't have, I try to find it for them. I try to think about what they're going to need in future, and make sure it's ready before they need it. Other than that, yes, I suppose I AM slacking.

If somebody said to me "Nick, I need you to justify your job. Show me what work you've done" then I would find it very difficult to actually point to something more tangible than saying management-speak bullshit like "I've facilitated the productivity of my team".

Results speak loudest though, and I know I'm never going to get a grilling from my bosses, because my team are happy, productive, and they keep hitting their deadlines with high quality software that the customer is prepared to pay for.

It's incredibly boring and incredibly frustrating, sitting on my hands. My team show me stuff, and my natural instinct is to try and think of something that could be improved. My natural instinct is to understand precisely what each team member is doing, and why. My natural instinct is to try and tell people what they should be doing, how and why. I have to fight all these instincts.

Sometimes, my team will come to me because they want a decision. My natural instinct is to have a discussion. My natural instinct is to understand all the pros and cons and debate them. I don't do this. I just make a decision and then everybody gets on with it. I might make the wrong decision, but as long as I'm right more than I'm wrong, then we're winning.

And we're most definitely winning.

The other 7 teams are unhappy places to be. There is a huge problem with staff turnover in the other 7 teams. Lots and lots of people are taking time off sick in all the other teams, except ours. My little team seems to be a happy oasis of calm in a sea of stress and accusations of blame.

Just about the only thing I do with my day is to spend 10 minutes complimenting each team member on the work that they've done and thanking them for their contribution. I spend a bit of time apologising for any frustrations there might be for things not going perfectly, and a bit more time reassuring everybody that I am listening and trying to improve things. Other than that, I leave everybody alone.

Every two weeks, the team get to show off what they've done, and every two weeks they have a big push and manage to get everything done to a high standard and give an impressive demonstration of their work to our customer. My only job is to be there to shut the customer down if they start asking why this or that hasn't been done, when we never said it would be.

We don't underpromise and overdeliver. We make a realistic commitment for the work we're going to undertake, in agreement with both the customer and the team, and then we get on and build it. Then we demonstrate that we did what we said we were going to do. Nothing more. Nothing less.

What's the role of management in all this? I haven't really figured it out. I feel terrible. I feel like a fraud. I feel like I'm getting paid money for doing nothing.

But doing nothing seems to get software built.

Nobody likes to be micromanaged. Nobody likes having somebody breathing down their neck. Nobody likes to feel they're not respected enough to be allowed to get on with their job. No professional is going to thank you for trying to interfere with their field of expertise. Nobody wants to have to explain their shit to a goddam manager.

Software should be like a delightful magic trick.

It's a recipe for success that's working brilliantly well with my team, as proven by the numbers and the direct comparison with my peers: the other 7 teams, who are under-performing and unhappy.

However... I'm not happy. I'm bored.

 

Tags: