By no means a complete list, but rather ones I think we should focus in on short term.
If you have to wait for a human to detect an error, you've already lost
Any practice for which the detection of a problem condition relies on a human noticing that a particular series of data is abnormal. Substitue thresholds, correlation engines, velocity metrics, etc.
All hands-on-deck incident handling without thought to coordination of efforts, reserves, and OSHT* troubleshooting, sleep cycles, human cognitive limits, or the deleterious effect of interrupts on engineering work.
*OSHT Troubleshooting:
- Observe the situation,
- State the problem
- Hypothesize the cause/ solution
- Test the solution.
Prevention of all errors is impossible, costly, and annoying to anyone trying to get things done.
Any process that increases the length of time between the creation of a change and its production release without either adding value to or providing definitive feedback on the production impacts of the change.