Scaling build and deploy with 1500+ engineers

Team Size
1500
developers
Structure
Monorepo
CI Runtime
15 minutes
Deploys
Continuous
Featured integration
Multi-queue

Jamil Seaidoun

Staff Engineer, Core infrastructure

Jamil is the lead on the build platform at DoorDash. He oversees the build platform, the deploy platform, and everything related to core infrastructure at DoorDash.

We were creating a monorepo for Doordash, so we needed a whole new modern infrastructure for build and deploy and everything, you know, touching those edges. And so we're like, well, Jenkins merge queue is not going to scale for us. We need to replace that.

Challenge

As the team decided to move to monorepo, they knew that they had to solve the scalability challenges. Build failures were common. They needed a modern infrastructure that can help them support builds and continuous deployments.

We were in a limbo state where things were broken most of the time.There was a big overhead to get the developers from point A to point B. We tried rolling our own merge queue, but it had it’s own complications.

Jamil Seaidoun

Staff Engineer, Core infrastructure

We've created the right documentation to make it as self-service as possible. We created a whole automated cut release and deployment system, and we tied it to Aviator's affected targets and their webhooks.

Jamil Seaidoun

Staff Engineer, Core infrastructure

Integration

Doordash runs 3000 to 5000 builds a day, and they needed a merge queue that supported multi-queue functionality to scale their build and deploy workflows.

  • Initially did a POC to find the right config that they can standardize across all repos
  • Created the documentation for developers to configure the rules
  • Aviator is now fully onboarded at across Doordash’s 150-200 repositories

Impact

Using Aviator, Doordash is able to set up automated deployments and keep their mainline healthy. Aviator catches bad, flaky tests, and it also catches backward incompatible changes across multiple repos.

  • It’s rolled out to all 1500+ developers at Doordash today.
  • Aviator is helping avoid 10 to 15 bad merges to the mainline everyday!
  • Help scale 3000 to 5000 daily builds using multi-queue and affected targets.

It's enabled us to do a lot more, things like automated cut releases and deployments. I don't think we could have done that without Aviator. We've seen Aviator catch a lot of the mainline issues ahead of time, preventing outages.

Jamil Seaidoun

Staff Engineer, Core infrastructure

When we merge, we're able to capture the information of what the affected targets are for a PR and let that translate into the webhooks that we rely on to capture that. That is really something that's very powerful for us.

Jamil Seaidoun

Staff Engineer, Core infrastructure

Feature highlight

Aviator’s parallel mode with affected targets helps Doordash scale the merges by parallelizing the builds and reducing the wait time. Using affected targets Aviator can identify that two PRs have no overlapping affected targets, so Aviator can test and merge them independently.

Let us show you how it works

Start for free

Not sure if Aviator is right for you? Get in touch.