Feeds

Revealed: The golden rules of managing software projects

Buff up your halos

  • alert
  • submit to reddit

The smart choice: opportunity from uncertainty

Reader Poll We asked what looks to have been a pretty contentious question – what’s the role of managers in software development? - and we got some pretty contentious answers, which are well worth a look in their entirety. The conclusion: a lot of managers are crap. But – and it’s a big but – they don’t have to be, if they get certain basics in place.

Here are your very own top five golden rules, compiled from your comments, which managers can employ to build trust and get the best out of developers. These rules may seem like common sense, but we know from the feedback that they are as frequent as a night bus. “Most can't [manage] and if you find one that can, you are blessed,” said one of our respondents. “If you find one, pay him or her whatever it takes, because they are rare creatures,” said another.

We’ve used the comments directly as they speak for themselves. If you want to help us bottom out how management can make a real difference to software projects, click here to answer a few very simple questions in our minipoll.

1. Protect the team from unnecessary distractions

A manager's job is to help the developers to work as productively as possible towards logical and achievable project goals by protecting the team. He must also earn the team's respect by fighting heroically for them against the boneheaded stupidity to be found in swampy stagnant meeting rooms across Britain.

The only 'big' company I've ever worked for that managed developers well was managed by an ex-coder with a 'personality' who could fight his own corner in the boardroom and kept the sales/marketing types well away from the developers, apart from the monthly 'meet the developers down the pub' meeting. That's programmers’ nirvana!

A good manager keeps the devs shielded from crazy nonsensical requests and other managers that don't understand the importance and priority of the items being made.

2. Provide structure where necessary

Some people/teams are able to produce the goods without management - others require various levels of management to keep them on track. A good manager will already understand this and treat people accordingly.

"Structured" is the key word. Go read "Dreaming in Code" - the more "awesome" the developers, and the more free rein you give them, the more out of control they'll be.

3. Plan proactively and collaboratively

Finally to all those - too few - managers who do a good job, keep at it, Carpe diem, or even better Carpe cerevisi!

The problem is not with managers per se but with managers who use schedules to beat up developers. Management is fairly straightforward if you are a manager and not a dictator. Real managers know that trust from your staff is earned, not given.

4. Know how to manage

Logistics, politics, budgets, etc are necessary but boring - so, let's leave that to managers as long as they get us what we need and stay out of the ‘how’.

In established professions like engineering and accounting, to manage the project you have to be a member of the profession. One of the problems facing IT is that our projects are run by professional salespeople, professional lawyers, and professional accountants. These people know a piece of the puzzle, but they should be resources that an IT professional manager consults, not quarterbacking projects.

5. Balance requirements with reality

A manager’s job is to balance between what is best for the company, for the devs and for the users. You can't just pick one. All that will do is run the company into the ground in time.

If the QA is getting buggy software then the manager should be able to see this. When there is a problem with something that they are managing, they first they must do is look at themselves.

The best developers always have a very clear understanding of where the money for their salaries comes from (customers), and the best managers should be helping the developers to produce the goods that those customers want.

We'd love to hear your views in our short poll on the next page.

Securing Web Applications Made Simple and Scalable

Next page: Reader poll

More from The Register

next story
KDE releases ice-cream coloured Plasma 5 just in time for summer
Melty but refreshing - popular rival to Mint's Cinnamon's still a work in progress
NO MORE ALL CAPS and other pleasures of Visual Studio 14
Unpicking a packed preview that breaks down ASP.NET
Secure microkernel that uses maths to be 'bug free' goes open source
Hacker-repelling, drone-protecting code will soon be yours to tweak as you see fit
Cheer up, Nokia fans. It can start making mobes again in 18 months
The real winner of the Nokia sale is *drumroll* ... Nokia
Put down that Oracle database patch: It could cost $23,000 per CPU
On-by-default INMEMORY tech a boon for developers ... as long as they can afford it
Another day, another Firefox: Version 31 is upon us ALREADY
Web devs, Mozilla really wants you to like this one
Google shows off new Chrome OS look
Athena springs full-grown from Chromium project's head
prev story

Whitepapers

Designing a Defense for Mobile Applications
Learn about the various considerations for defending mobile applications - from the application architecture itself to the myriad testing technologies.
Implementing global e-invoicing with guaranteed legal certainty
Explaining the role local tax compliance plays in successful supply chain management and e-business and how leading global brands are addressing this.
Top 8 considerations to enable and simplify mobility
In this whitepaper learn how to successfully add mobile capabilities simply and cost effectively.
Seven Steps to Software Security
Seven practical steps you can begin to take today to secure your applications and prevent the damages a successful cyber-attack can cause.
Boost IT visibility and business value
How building a great service catalog relieves pressure points and demonstrates the value of IT service management.