Software quality is not a technical metric -- it is a moral commitment proportional to the harm potential of the systems we build.
The question "how good is good enough?" does not have a universal answer. It has a contextual answer that is determined by who bears the risk of the answer being wrong. The professional's obligation is to ask that question honestly -- and to ensure the people who bear the risk have enough information to make an informed judgment.
1
Software quality has multiple dimensions: correctness, reliability, safety, usability, maintainability. Context determines which dimensions matter most -- and the harm potential determines the standard required.
2
Therac-25 (1985-87): at least 6 radiation overdoses, 3 deaths, caused by a race condition in software that replaced hardware safety interlocks. The canonical safety-critical software failure case.
3
Product liability for software is weaker than for physical products. EULAs disclaim warranty broadly. In safety-critical domains, regulatory requirements (FDA, FAA) override contractual disclaimers.
4
Waterfall provides clear accountability but late defect discovery. Agile enables early feedback but diffuses accountability and creates technical debt risks. Neither is inherently more ethical -- context determines appropriateness.
5
The autonomous vehicle trolley problem shows that algorithmic design encodes ethical choices. The engineer who programs the algorithm -- not the vehicle in the moment -- makes the moral decision. Transparency and democratic governance of those choices are ethically required.
6
Boeing 737 MAX: 346 deaths, MCAS relied on a single sensor, pilots were not informed the system existed. Organizational pressure suppressed both technical concerns and disclosure. Commercial incentives drove regulatory capture.
7
Professional codes (ACM, IEEE) place public safety above organizational loyalty. When they conflict, the public interest takes precedence. This obligation is real, uncomfortable, and structurally unsupported by employment law in most jurisdictions.
8
Dark patterns are intentional design choices that manipulate users. They are ethically distinct from defects -- they are not bugs, they are features designed to cause harm to users for organizational benefit.
9
Certification standards (DO-178C, IEC 62304, ISO 26262) translate ethical obligations into auditable technical requirements. They exist because professional ethics alone is insufficient to ensure safety in the presence of organizational commercial pressure.