Backend General

Gradual Code Releases Using an In-House Kubernetes Canary Controller

New service releases deployed into DoorDash’s microservice architecture immediately begin processing and serving their entire volume of production traffic. If one of those services is buggy, however, customers may have a degraded experience or the site may go down completely.  Although we currently have a traffic management solution under development for gradual service rollouts as ...

Culture General

What to Expect from DoorDash’s Technical Interview

Follow these helpful tips when preparing for DoorDash's technical interview.

Kirtan Patel
Backend General

Optimizing OpenTelemetry’s Span Processor for High Throughput and Low CPU Costs

When companies move to microservices, they need to address a new challenge of setting up distributed tracing to identify availability or performance issues throughout the platform. While various tools offered on the market or through open-source perform this task, there is often a lack of standardization, making leveraging these tools costly or complicated.  As DoorDash ...

Santosh Banda
Backend General

Examining Problematic Memory in C/C++ Applications with BPF, perf, and Memcheck

As applications grow in complexity, memory stability is often neglected, causing problems to appear over time. When applications experience consequences of problematic memory implementations, developers may find it difficult to pinpoint the root cause. While there are tools available that automate detecting memory issues, those tools often require re-running the application in special environments, resulting ...

Filip Busic
General Machine Learning

Best Practices for Regression-free Machine Learning Model Migrations

Migrating functionalities from a legacy system to a new service is a fairly common endeavor, but moving machine learning (ML) models is much more challenging. Successful migrations ensure that the new service works as well or better than its legacy version. But the complexity of ML models makes regressions more likely to happen and harder ...

Ying Chi

Rebuilding our Pricing Framework for Better Auditability, Observability, and Price Integrity

Learn how we migrated our pricing logic to microservices

Irene Lee Menghan Li Yijie Xiao Yujue Wang Zhengli Sun

Using java.time to Increase Code Readability and Reduce Errors

Given the importance of time in our services and the need to scale, java.time works much better than primitives.

Kevin Huang

Using a Decision Engine to Power a First Class Customer Experience

DoorDash's decision engine empowers customer service agents to deliver consistent, effective solutions for customer issues.

Preetha Vijaya Saraswathi Derrick Hu Kevin Nguyen Alex Liu
Backend Culture Data General Machine Learning Mobile Web

2020 Hindsight: Building Reliability and Innovating at DoorDash

DoorDash recaps a number of its engineering highlights from 2020, including its microservices architecture, data platform, and new frontend development.


Future-proofing: How DoorDash Transitioned from a Code Monolith to a Microservice Architecture

In 2019, DoorDash’s engineering organization initiated a process to completely reengineer the platform on which our delivery logistics business is based. This article represents the first in a series on the DoorDash Engineering Blog recounting how we approached this process and the challenges we faced. In traditional web application development, engineers write code, compile it, ...

Cesare Celozzi

Hello Seattle: DoorDash Expands its Engineering Footprint to the Pacific Northwest

DoorDash opens a new tech office in Seattle to support its Drive and DashMart business lines.

David Azose
General Web

Things to Keep in Mind When Integrating a Map Feature to a Web App

Lessons for developing a fast, flexible, and scalable map feature on web

Ying-Chun Wang

Sign up for updates

Thank you for subscribing!

Sign up for updates