This isn't an argument against testing before production. It's an argument against treating a long-lived shared staging environment as your primary safety mechanism.
Every software engineer has lived through this exact Thursday afternoon nightmare: The feature was thoroughly tested on the testing server. The CI/CD pipeline was a sea of reassuring green checkmarks. QA gave their final stamp of approval. With absolute confidence, you clicked "Deploy to Production."
Ten minutes later, the alert channels started screaming, database connections saturated, and customers began reporting broken checkout flows.
When the post-mortem rolled around, the consensus was predictable: "The testing environment diverged from Production again. We need to sync the databases more often. We need to mirror the production setup exactly."
So, the team spends two sprints setting up complex data-anonymization pipelines and mirroring server configurations. Yet, three months later, the exact same production incident happens again.






