In 30 seconds
- Good engineering is what keeps agile fast over time.
- Practices: automated tests, refactoring, CI, simple design, code review.
- Skipping it creates technical debt that slows every future change.
Why it matters
The ninth agile principle says continuous attention to technical excellence and good design enhances agility. Without it, each sprint builds on shakier code, and the team slows down until change feels risky.
Core practices
- Automated tests at several levels
- Continuous integration: merge and test many times a day
- Refactoring as part of everyday work
- Simple design: build only what's needed now
- Code review or pair programming
Many of these come from Extreme Programming.
Making room for it
- Put quality steps in the Definition of Done
- Estimate stories including tests and refactoring, not separately
- Show the cost of technical debt to the Product Owner in plain terms
Myth vs reality
Myth · Excellence means gold-plating.
Reality · It means keeping code easy to change, not perfect.
Myth · Quality slows delivery.
Reality · Poor quality slows delivery more, just later.
Myth · It's only the developers' concern.
Reality · Everyone pays for low quality through slower change.
FAQ
How do we justify the time?
Track how long changes take; rising cycle time is the cost of neglect.
Should refactoring be a separate story?
Usually no; do it as part of the work that needs it.
Is technical excellence about tools?
Mostly about habits; tools help enforce them.