How Etsy Deploys Code 50 Times a Day: Lessons from Their DevOps Pipeline
Etsy achieves up to 50 daily deployments by leveraging a fully automated pipeline, IRC‑based collaboration, per‑developer KVM VMs, Chef‑managed cookbooks, the Try tool on Jenkins, one‑click Deployinator, feature flags, extensive monitoring, and a blameless post‑mortem culture, all detailed in this case study.
Background and Deployment Frequency
Etsy is renowned for its DevOps and continuous delivery practices, enabling roughly 50 deployments per day. The company’s strategy revolves around making many small, continuous changes, which naturally leads to frequent releases.
Developer Confidence and Communication
Every developer must constantly answer, “Do I have enough confidence to deploy this change?” To support this confidence, Etsy enforces IRC‑based communication, developer virtual machines, continuous integration, one‑click deployment, comprehensive monitoring, blameless post‑mortems, and an on‑call policy.
Infrastructure: Per‑Developer VMs
Each engineer receives a KVM virtual machine configured via Chef. The same Chef cookbooks used in production are applied to these VMs, giving every developer a complete Etsy stack. Developers can spin up a VM through the web application Virtual Madness , which automates the entire provisioning process.
Continuous Integration with Try and Jenkins
The Try tool sits at the core of Etsy’s CI workflow. Try lets developers test code changes inside Jenkins without first committing to the trunk, keeping the trunk clean and always deployable. The CI cluster supports 150 engineers and runs over 14,000 test suites daily, with LXC containers providing load balancing and isolation.
Deployment Pipeline and Tools
Code passes through a staging environment called Princess before production. Etsy’s custom deployment tool Deployinator offers one‑click deployments, streamlining the release process.
Feature Flags and A/B Testing
Feature flags, accessed via Etsy’s Feature API, are a core part of the deployment process. They enable fine‑grained control, allowing features to be fully on, fully off, or partially enabled for operational ramp‑ups and A/B tests. Variant selection is logged for every check.
Monitoring and Alerting
Developers maintain their own feature monitoring dashboards, which display all metrics as charts by default. As the number of metrics grew, Etsy introduced Kale to detect anomalous patterns. Logs are visualized with Supergrep , a web‑based log viewer that improves signal‑to‑noise ratio.
Collaboration via IRC and Post‑Mortem Culture
IRC is the primary communication channel, with dedicated rooms such as #warroom for incident response. After any incident, a blameless post‑mortem is conducted, recorded in a tool called Morgue , which stores the date, severity, IRC logs, charts, and remediation steps.
On‑Call Rotation
All teams—including operations, development, payments, and support—participate in an on‑call rotation, typically one week out of every four. This policy ensures everyone understands the daily production challenges and considers them when building new features.
Scale and Traffic
Etsy handles roughly 600,000 monthly visitors and 1.5 billion page views per month, underscoring the need for a robust, low‑risk deployment process.
For more details on Etsy’s feature‑flagging API, see the repository: https://github.com/etsy/feature
Signed-in readers can open the original source through BestHub's protected redirect.
This article has been distilled and summarized from source material, then republished for learning and reference. If you believe it infringes your rights, please contactand we will review it promptly.
How this landed with the community
Was this worth your time?
0 Comments
Thoughtful readers leave field notes, pushback, and hard-won operational detail here.
