Product – Design for Testability from InfoQ.
Nice talk sharing the experiences that led to and support testing in production as done in Gilt and now at flow.io from Michael Bryzek.
- Test in production is cheaper: up to almost half your engineering budget could be going to staging environments.
- Make sure no one else can break your code. If your component fails, it’s your responsibility and no one else.
- Event streams change failure modes from an unavailability to a delay.
- Every system and team other than yours is a third party. The team across the corridor is as external to your as Facebook would be.
- Support data and accounts to be marked as sandbox.
- Examples in documentation are run against production