Many development teams skip having a staging environment for their applications. They submit a PR, potentially run tests in a CI system, merge to master, and then deploy to production. This is a risky pipeline because there is no true integration environment or integration testing being performed. What’s worse is that if there is an issue they may engage in “cowboy coding” to try to resolve the issue on their live production environment.
In this article, we’ll discuss some of the advantages of using staging environments in your software development lifecycle, and how they help ensure that the product you expect is delivered to production.