Definition: Technical debt is the extra future work created when developers choose a quick or imperfect solution instead of a better long-term one.
Like financial debt, it can become more expensive over time if it is not addressed.
Examples:
- Copy-pasting the same code into 10 files instead of creating one reusable function.
- Skipping tests because a feature needs to be released today.
- Keeping an outdated library that makes future development increasingly difficult.