Spending money to improve team productivity
When adapting to agile philosophy some managers get carried away and want to spend some money on improving the team productivity. Especially if you have an external consultant coaching the team, the manager tends to ask the coach what they should buy. Often the budget is presented as " $X per developer". As a coach it is always nice to hear that the management recognizes the benefits from the new methodology and wants to improve it even more but it is only once in a while the question is correctly asked. First of all the question should be addressed to the team and not to the coach. A very important part of the agile process is trusting the team to improve its own process. Second the budget should be for the team and not for each member of the team (it is a big psychological difference how you present the budget).
So now that the team have their fate in their own hands it is not uncommon to have them turn to the coach for inspiration. Nothing wrong with that. So here is some inspiration:
- Get super sticky post-Its. Every time one falls to the floor you planning session is paused. An alternative I've not tested my self are sortable post-It cards.
- Get more white boards.
- Get a second monitor for each work station.
- Get a nice visualization of the build status. A monitor at the coffee machine, a modified traffic light or just a number of lava-lamps visualizing the status of the last automatic build.
- Have team activities such as lunches, beer, donuts or more traditional team building activities. Personally I prefer simple reoccurring team activities over expensive team building activities. If people talk to each other outside their work, they will probably talk more to each other while working. And often talk about their work at these social gatherings.
- Formal training. Examples: BDD/TDD, Scrum, XP.
- Get an Xbox and a number of games (or some other kind of game team members can gather around to let off some steam).
- Get Resharper. People tend to not wanna live without this one once they start using it.
- Improve performance of work stations and/or build server.
- Get nice chairs.
- Hire one more developer to ease the work load on the team. Gives the team more time for personal research and education. Do not confuse this with adding more work to each iteration.