Competition — it’s what makes everything better.
The most successful athletes and sports teams are highly competitive. The most successful people are driven to compete. The most successful companies challenge themselves to be better than the competition.
Does your software development team compete with anyone?
It should. Competition will up the energy level and drive everyone on the team to do better. Improved individual performance will quickly result in better team performance. Here are some possible competitors.
- Compete with insiders. If your company is large enough to have multiple software teams, they could compete with each other. This scenario presents some difficult challenges, however. Teams working on different systems and technologies are hard to compare. If the differences are small, comparisons may be valid, but will remain somewhat subjective.
- Compete with outsiders. If you’re selling a product, you must have competitors. Buy their products and conduct comparisons. Work with your marketing department to have independent experts compare products. Set goals. Can your product cost less? Use less memory or storage? Be faster? Simpler? Challenge the team to do better than the competition.
- Compete with users. (Well, almost; user expectations.) If you’re delivering software to an internal workgroup, impress them. Deliver on time and on budget. Deliver free of defects. Deliver software that just works. Ask them to grade the software on a scale of one to ten. Next time, do better.
- Compete with itself. One of the basic tenets of any agile development approach is continuous improvement. Whatever the team does, it can do better. Higher velocity. Fewer defects. Accurate estimates. Greater capacity. Better budgeting. Track a few metrics and challenge the team to do better and be more agile.
And one more thing. Competition creates winners. Winners get rewarded. Don’t forget that.