Fortune 500 consumer goods company

A Fortune 500 consumer goods company reaches DORA’s top quartile with Shipyard ephemeral environments

Its digital commerce teams get a full, isolated environment to test every change before it merges.

results

4 of 4

DORA measures in the top band, up from 1 of 4

64

Live environments

3,000+

Builds in 30 days

Top band on 4 of 4 DORA delivery measures after Shipyard, up from 1 of 4: deployment frequency, lead time, restore time and change failure rate

Background

The customer is one of the world’s largest consumer goods companies. Its digital commerce organization builds the storefronts, commerce services and internal tools behind the company’s e-commerce business.

Several engineering teams share one Shipyard organization. Between them they have 23 applications set up in Shipyard, from the commerce engine’s front end to marketing and admin tools. Shipyard started with a handful of developers. As of 23 September, 69 people belong to the organization.

Challenges

Several teams ship changes to the same commerce estate. Shared pre-production environments broke often. Changes queued behind QA and user sign-off, and too many defects reached production with new features.

back-up 1
Home-Built Tooling That
Didn’t Hold Up:


The team first built its own environment tooling. It didn’t hold up:

  • It tied up dedicated DevOps engineers for more than six months and still had gaps.
  • It needed hours of upkeep every week.
  • Its environments didn’t scale to zero when idle, so costs kept climbing.
  • It sat behind the VPN and was really a code review tool. Product managers, testers and other stakeholders couldn’t easily open it, so their review often waited for shared staging.

improvement 1
What Any Replacement
Had to Fit:


Any replacement also had to fit the way the team builds software:

  • Container images live in a private Azure Container Registry, reached through a service principal over a private network path. Builds also need credentials for private packages.
  • The Next.js front ends take environment-specific values at build time, so every environment needs its own build.
  • Some features span several repositories. Branches have to line up across them, with mock and job-style services running alongside the application.

Solution

The applications were already containerized, so Shipyard fitted the existing delivery pipeline with minimal changes. The first project was onboarded and running within a day of starting setup, with no new hires.

worldwide-network (1) 1
An Environment for
Every Pull Request:


When a developer opens a pull request, Shipyard builds a full copy of the application from the team’s own definition. Every build in the last 30 days started from a git event, not a manual trigger.

Before: pull requests queue for shared staging, get batched, then wait on testing and bug fixes. After: each pull request gets its own full environment, is reviewed and tested by anyone, and deploys on demand

curve-arrow 1
What Each Environment
Comes With:


Each environment comes with what the team needed:

  • Single sign-on and access controls, so product managers, testers and executives can open it without the VPN.
  • Its own snapshot of test data, with logs flowing to Datadog.
  • Private registry access through the customer’s service principal, build-time secrets for private dependencies, and per-environment values for each Next.js build.
  • Support for monorepo and multi-repo applications, with mock and job-style services alongside, so reviewers see the complete change.

back-up 1
A Dedicated Cluster,
Run by StackGen:


StackGen provisions and operates a dedicated Kubernetes cluster for the customer in its Azure tenancy. No environment cap applies, so teams open as many environments as their work needs. Environments scale to zero when nobody is using them.

logo

Results

speedometer-arrow 1
Top Band on All Four
DORA Measures:


By the team’s own measures, before Shipyard it reached the top band of Google’s DORA research on one of four delivery measures: deployment frequency. After, it reached the top band on all four. It deploys on demand, changes reach production in under an hour, service recovers in under an hour, and 15% or fewer changes fail. About a quarter of teams reached that band in DORA’s 2021 research.

DORA delivery measures before and after Shipyard: deployment frequency on demand before and after; lead time and time to restore from days to under 1 hour; change failure rate from above 15% to 15% or less

improvement 1
More Teams
Keep Adopting It:


Shipyard has been part of the customer’s delivery workflow for years, and more teams keep adopting it:

  • 69 organization members and 23 applications set up, up from a handful of developers at the start.
  • 3,013 builds in the 30 days to 23 September, about 100 a day, from 49 active commit authors.
  • 64 environments live on 23 September.
  • More than 120,000 builds to date.

Looking ahead

Shipyard is now part of StackGen. As AI writes more of the code that reaches review, every change needs somewhere real to run before it ships. Shipyard environments are already reachable by AI agents through the Shipyard MCP server.

StackGen is bringing Shipyard into its Autonomous Operations Factory, so a proposed change can prove itself in a real environment before it reaches production.

All

Start typing to search...