On Developer Productivity
In my experience, software development velocity correlates strongly with:
- The willingness to make mistakes. Small mistakes can be accepted as the cost of doing business, bigger ones can be automatically detected and remediated in real time. Velocity is gained through automation and no-blame culture.
- The number of hours per week where a state of high-productivity ‘flow’ can be achieved. Flow can only happen where developers have uninterrupted time and clarity of goals. Velocity is gained through hands-off leadership.
- The ability to make decisions in real time, without having to ask permission or coordinate with external teams. Velocity is gained through trust, transparency and architectural decoupling.
In short: Automation, No-blame culture, Hands-off leadership, Trust, Transparency, and Architectural decoupling.
Tenets of Lean, but boogeymen in the typical enterprise.