Company
Date Published
Author
Greg Foster
Word count
2395
Language
English
Hacker News points
None

Summary

Graphite's engineering team values rapid iteration and frequent updates, leading to initial challenges with regressions in their deployment process. To address this, a separate staging environment was created at the end of 2022 to catch issues before they reached production, involving duplicating infrastructure and implementing a deployment pipeline with a one-hour wait period before promoting changes to production. This system, inspired by experiences at Airbnb, allowed for safer and more efficient testing of changes, significantly reducing the rate of production regressions while maintaining development speed. Although there were initial concerns about the complexity of managing two environments and the wait time before production deployment, the team found value in having a staging environment to test database migrations and other changes, ultimately leading to a more stable and reliable deployment process. Improvements such as an emergency deployment pipeline and controls for scheduling production promotions were added over time, enhancing the flexibility and effectiveness of the process.