| > (a) developers did not bother to gather and understand requirements but rushed to start coding Because of arbitrary and too short deadlines > (b) poor communication with the customer and stakeholders Communication is a two way street. Why blame devs for all this? In my opinion, when a project fails, you have to blame the people higher up in the management chain who are coordinating the work, rather than the engineers. (in a large company) If engineers are to blame, maybe look at your hiring standards and hire better engineers. This points back to the management again. > Those faults may come from arrogance or inexperience, or both. Don't hire arrogant or inexperienced engineers then? |
I have worked with terrible managers an dysfunctional organizations, but I have seen developers rush to code and stop communicating far more frequently.
I don’t really care about blame. These are people problems with no single solution. When I get involved in a failed project the customer has moved past blame and just wants to salvage something to meet their requirements. The programmers will blame management with little introspection about their own role in the failure.