Throughout this book I have made a lot of criticism about managers, executives, and other decision makers. As an engineer myself, I tried to write about how I would like to be managed and what kind of a work environment I would like to work in. I wrote about how developing good and clean software should be prioritized in an organization, and how one can go about hiring and incentivizing employees in the right way to reach that aim.
Naturally, it wouldn’t be fair of me to only criticize management. While bad management decisions have very adverse outcomes for software quality, they are not the only contributors. There is some substantial criticism that needs to be made for the people who actually design and develop the software.
Here is where I criticize the engineers, including myself. We, the engineers, make mistakes too. Some amount of self criticism would be appropriate.
After all, it is only fair.