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 to build and deploy and everything. And so we're like, well, Doordash merge queue is not going to scale for us. We need to replace that.
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 bigoverhead to get the developers from point A to point B. We tried rolling our own merge queue,but it had its own complications.
We've created the right documentation to make it as self-service as possible. We createda whole automated cut release and deployment system, and we tied it to Aviator's affectedtargets and their webhooks.
Doordash runs thousands of builds a day, and they needed a merge queue that supported multi-queue functionality to scale their build and deploy workflows.
Using Aviator, DoorDash is able to set up automated deployments and keep their mainlinehealthy. Aviator catches bad, flaky tests, and it also catches backward incompatible changesacross multiple repos.
It has enabled us to do a lot more, things like automated cut releases and deployments. Idon't think we could have done that without Aviator. We've seen Aviator catch a lot of themainline issues ahead of time, preventing outages.
When we merge, we're able to capture the information of what the affected targets arefor a PR and let that translate into the webhooks that we rely on to capture that. That is reallysomething that's very powerful for us.
Aviator’s parallel mode with affected targets helps DoorDash scale the merges by parallelizingthe builds and reducing the wait time. Using affected targets Aviator can identify that two PRshave no overlapping affected targets, so Aviator can test and merge them independently.