I鈥檝e written this document because, over the past few years, I have encountered one too many situations with developers not living up to their own expectations.
As a developer myself with a couple of decades of experience under my belt, I鈥檝e seen a lot of examples of how code can go wrong and how painful it can be to fix them when the PM comes along with a new feature request or important bug fix. As a project manager I鈥檝e had to deal with the consequences of those poor coding decisions, spending an inordinate amount of time and social and political capital trying to smooth things over when a client gets upset because we went over time and budget.