- Impossible project deadline
- Quick & Emergency fix (Shortcuts)
- Poor development processes
- Lack of Experience
- Lazy/poor developers
- Too many developers
- Lack of management
- Low expectation
- No guiding principle
- Unaware of the importance of code quality
- Lack of code quality management
- No peer code review