http://qs321.pair.com?node_id=381801


in reply to Making the Business Case for Developer-Run Development

Why does the senior management want to install a manager? Is it just because the department is growing, so they think its a natual step, or are there specific concerns they have? Ask yourself these questions as part of your preparation. Then ask them.

Explain that you have a good working practice (I assume you do) and that you are concerned it will be disrupted.

In my experience the most difficult thing for developers, and the piece that gets most contentious, is estimating time and budgets. A large part of the Xtreme programming philosophy (client on site, allways having working software, small steps) seems to be about finding another approach to this, since its so difficult to plan and estimate correctly up front.

If that is a concern, explain that its notoriously difficult in the software industry, and its a known concern with lot of competing methodologies that attempt to solve it. Its not just that developers are always bad at estimating, and its not something that a hard nosed manager will just be able to fix.

Generally though, it seems like you don't want a non-technical manager making decisions that are directly or indirectly technical. This includes both "use Java for this" and "have this ready in 2 weeks (which makes a whole lot of technical decisions for you right aways)". So tell the senior management that, and make sure the job description does not allow it. Decisions of that nature should be taken jointly by the lead developer and the manager. Not the manager consulting the developer, but a joint decision. That needs to be in the contract.

Make sure you get in on the recruitment process. This includes the job spec, and the interviews.

Managers are not bad, but don't let them change the way you work. And don't don't don't accept anyone with PRINCE2 training!

qq