Mobile

Mobile

Building Multiple Distinctly Branded iOS Apps from a Single Codebase

A scalable solution for supporting multiple iOS apps means leveraging a common app library and design language system.

David Phan
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.

WayneCunningham
Mobile Web

Implementing Theming in DoorDash’s Design Language System

Adding the concept of Theming to DoorDash's design language system made it easier for engineers to use standardized design elements in all of our products.

Lindsey Menges
Mobile

A Framework For Speedy and Scalable Development Of Android UI Tests

Learn how a Fluent design pattern can help create easy to read, scaleable, automated UI tests for Android development

Nishant Soni
Mobile

Avoiding Conditional Navigation Pitfalls When Implementing the Android Navigation Library

Learn how we we were able to utilize the Android Navigation library without sacrificing user experience

Maria Sharkina
Mobile

Our “Tech Stack” in the Android Dasher App

DoorDash has been on a hiring binge since the company was founded, often doubling or tripling in size each year. Over the last 2-3 years, this was particularly true for our Android teams as the platform has become more critical to the company. We’ve been aggressively growing our Android teams and will continue to do ...

Martin Beechen
Mobile

[Series] How I Spend My Time – iOS Mobile Product Engineer

Since joining DoorDash about a year and a half ago, I have been able to work on a number of teams as an iOS engineer such as Dasher, Drive, Geo-Intelligence, and Internationalization. I’ve built core flows for our delivery process, merchant specific features such as Catering Setup and Parking Stalls, and a number of required ...

Raza Padhani
Culture Mobile

Why I Chose to Join DoorDash as an iOS Engineer

Here at DoorDash, I work as a mobile engineer and I have been interviewing candidates for about a year now. I often get asked why I joined DoorDash so I thought I would expand on that in a blogpost. I joined DoorDash on July 23rd, 2018 and I did so because we’re solving the logistics ...

Raza Padhani
Mobile

How to detect iOS memory leaks and retain cycles using Xcode’s memory graph debugger

At DoorDash we are consistently making an effort to increase our user experience by increasing our app’s stability. A major part of this effort is to prevent, fix and remove any retain cycles and memory leaks in our large codebase. In order to detect and fix these issues, we have found the Memory Graph Debugger ...

Vince Chau
Mobile

Contract Testing with Pact

Introduction As we migrate our systems to a microservices-oriented architecture at DoorDash, we have taken care to balance the excitement around anticipated benefits (development velocity, deployment independence, etc.) with a more measured assessment of our preparedness to work with the complexities introduced by more distributed systems. One of the most common pain points with microservices — or, ...

Erich Douglass Wei Lin Steven Liu Yen Pai
Mobile

Synchronizing Network Calls With RxJava

By Rohan Shanbhag and Wei Lin, Software Engineers Most Android apps rely on network calls to a set of backend services. As an app grows, so does the complexity of network calls and data operations. Networking libraries like Retrofit and Volley provide all the functionality needed for basic API calls. However, for threading and sequencing of events beyond a ...

Rohan Shanbhag Wei Lin
Mobile

Tips and Tricks for Migrating from Swift 2 to Swift 3

At DoorDash we recently migrated the codebase of our iOS Consumer and Dasher apps to Swift 3 from Swift 2. We decided to migrate the codebase after XCode 8.3 was released in March, which ended support for Swift 2.3. The newest versions of many third party libraries used by our apps are written in Swift ...

James Chiang

Sign up for updates

Thank you for subscribing!

Sign up for updates