About Relativity

Relativity makes software to help users organize data, discover the truth, and act on it. Their e-discovery platform is used by thousands of organizations around the world to manage large volumes of data and quickly identify key issues during litigation, internal investigations, and compliance projects.

Accelerating Developer Velocity Through Azure Microservices

Corey Wagehoft, Lead Systems Engineer at Relativity, led an internal initiative to reduce costs and increase developer velocity by migrating from traditional legacy windows services to container-based microservices running in Microsoft Azure.

“Deployments in the past typically took 8 hours and were manually orchestrated by a team of 3 engineers,” said Corey. “In addition, we had a 50% change failure rate which was dropping internal confidence and causing downtime.”

In the past, deployments took 8 hours and 3 engineers.

Corey Wagehoft | Lead Systems Engineer | Relativity

Corey knew Relativity needed to transform its deployment pipelines so it could streamline the onboarding of their microservices in the Azure cloud. His team also needed a way to support the legacy Windows services throughout this migration as well.

Managing user data meant that Corey and his team had strict security requirements, which limited the types of tools that could be onboarded. “We had a cultural tendency to build our own tools internally,” said Corey.

Evaluating Spinnaker and Harness

Corey’s team first looked at Spinnaker, but quickly determined the open-source solution wouldn’t work for their needs.

“In order to get partial functionality out of Spinnaker, we would need to dedicate an engineer to the project for an entire year,” said Corey.

It would take one dedicated engineer for us to get partial functionality out of Spinnaker.

Corey Wagehoft | Lead Systems Engineer | Relativity

Relativity uses Linux and containers throughout their tool stack and Spinnaker lacks native Microsoft integrations. Corey also determined that Spinnaker would require large adjustments to comply with Relativity’s security standards.

After a short evaluation, Corey’s team picked Harness CD as-a-Service for the following reasons:

  • Ability to support native Windows services in addition to Azure microservices
  • Native integration with Azure Key Vault for secrets management
  • Secure communication via the Harness delegate architecture
  • CD as-a-Service vs. self-managed solution that requires dedicated engineering resources

Secure Continuous Delivery with Harness

In just 3 months, Corey and his team were able to increase deployment velocity by 30X using Harness.

Harness integrated with Relativity’s entire toolchain that consisted of Jenkins for CI, HashiCorp Terraform for Infra provisioning, New Relic for APM, Splunk for Log Analytics, and Prometheus for Infra monitoring.

The effort we spent on deployment completely dissipated. I can take a coffee break while Harness deploys.

Corey Wagehoft | Lead Systems Engineer | Relativity

His team also leveraged Harness Pipeline templates to create gold standards so development teams could deploy consistently in a repeatable manner no matter whether the artifact was a Windows service or Azure microservice.

Harness’ native integration with Azure Key Vault (a feature request from Relativity during their Harness trial) allowed Relativity to stay ISO and SOC 2 compliant while also preparing the team for FED ramp certification.

Finally, teams were leveraging Continuous Insights to help them make data-driven decisions around pipeline flow, deployment velocity, change failure rate and MTTR.

With Harness, we’ve managed to reduce deployment time from 8 hours to minutes with self-service CD for our engineering team.

Corey Wagehoft | Lead Systems Engineer | Relativity

80% Reduction in Change Failure Rate

With Harness, Corey’s team achieved the following results:

  • Reduced deployment time by 98% from 8 hours to just a few minutes
  • Reduced deployment effort by 98% from 3 full-time engineers for 8 hours to 1 engineer for minutes.
  • Reduced change failure rate by 80% from 50% to 10%.
  • Saved $150,000 instead of requiring dedicated engineering resources to manage Spinnaker