software
The virtues of small development teams
For the most types of development, small teams of skilled developers - between two and four people - can be vastly more efficient than traditional, larger teams. Especially in the case of new product development, a small team can be significantly more agile and effective. Productivity can be improved again with the addition of assistants, or 'monkeys', that help with tedious jobs such as hand testing, graphic design, machine administration or simple coding jobs.
My vision of the ideal 'ninja' development team is three guys sitting around a round table. They're all passionate about their work. They're all experienced in the technologies they work with. They probably won't agree on everything (and will delight in arguing a case, even if it's silly), but they know when enough is enough and can make a good decision quickly. They know each other's strengths and weaknesses well. There's a certain 'vibe' to the team; the idea that their work is fun, it's a challenge, it's what they live for. Give them a seemingly impossible task, and they'll not only achieve it, but exceed all expectations.
