SoulCycle is a 45-minute indoor cycling class that features high-intensity cardio, muscle-sculpting strength training, and rhythm-based choreography. Its customers consider SouclCycle classes to be much more than just a workout; they see them as a powerful mind-body experiences. With more than 82 studios (and counting!) their revolutionary indoor cycling class is available across the U.S. and Canada.
CI/CD Before Harness
SoulCycle performs daily deployments across 20+ services and growing.
Deployments in the past typically took developers 1 hour each and 3 QA engineers 3 to 6 hours to verify. Both the deployment and verification processes were done manually, making it difficult to measure success of deployments beyond the site staying up.
DevOps teams previously “held the keys” to deployments, and wanted to shift that responsibility to the developers so they could be more autonomous and deploy without dependencies.
“Developers need to be able to build and ship their applications to the right places at the right time,” said Mark Sost, Engineering and Product Leader at SoulCycle Inc.
The Compelling Event
SoulCycle decided to migrate from a legacy PHP application to a cloud-native, microservice architecture so they could independently scale and roll out new applications.
Evaluating Harness and Open-Source
Prior to Harness, SoulCycle evaluated an open-source alternative for a month, managing its components & configuration on their own. The open-source solution lacked configuration-as-code, documentation, and support. In short, it created too much management overhead. SoulCycle would have needed 3 people (1 lead engineer, 1 senior DevOps and 1 QA) to manage and operate this solution for Continuous Delivery (CD).
In contrast, Harness offered “Continuous Delivery as-a-Service” and took care of the previous management overhead by streamlining the deployment process. Harness also had full support for configuration-as-code with automated deployment, verification, and rollback working out-of-the-box.
In addition, feature and support requests were quickly turned around by Harness engineering, and the dedicated customer success team made on-boarding and deployment easy, simple, and painless.
Harness successfully integrated with SoulCycle’s technology and tools consisting of:
- Go, Node.JS, Python, Postgres
- Google Cloud Platform (GCP), GKE , Kubernetes, Docker for Container Orchestration
- Cloud SQL, Big Query, PostgreSQL, MySQL
- Travis CI, Cloud Builder and GCR for Continuous Integration (CI)
- StackDriver and Datadog for monitoring
As we were evaluating CD partners, we looked into an open-source alternative — but realized that it could take anywhere from 3-5 engineers and over $100k/ year to maintain.Mark Sost | Engineering Leader | SoulCycle
Key Harness Benefits
Harness provided the following benefits for SoulCycle:
- Automation of deployments across 5+ Kubernetes clusters and 100+ pods
- Configuration-as-code (YAML)
- Reusable pipeline templates/patterns across dev teams and applications
- Support for Blue/Green and Canary deployments
- Out-of-the-box integration with Datadog
- Auto-verification of deployments using ML
- Auto-rollback for failed deployments
- Custom integration hooks for customer-built toolsets
- Customer Success team, on-boarding, support line and velocity of feature requests
Reduced Deployment Time & Effort by 80%
From an application development perspective, I’m not going to be best world-class Continuous Delivery expert. I trust Harness to be that for me so I can continue to focus on what we’re best at here at Soulcycle.Mark Sost | Engineering Leader| SoulCycle
SoulCycle has been able to reduce deployment time and effort by as much as 80%.
Deployments now take 1 developer 10-15 mins instead of 60 minutes.
QA and verification time for deployments has also been reduced by 80%, and deployment verification now takes 3 QA engineers a single hour instead of 3 QA engineers spending 3-6 hours each.
In addition, SoulCycle avoided 3 FTE resources to manage the open-source CD alternative, worth well over $100k of fully-loaded cost.