Skip to main content
Mobile

How Uber’s New Driver App Overcomes Network Lag

November 28, 2018 / Global
Figure 1: In this simple example, the Increment Transform increases the count property by one as the Counter object passes through.
Figure 2a: Normal counter request fails to upload to a server.
Figure 2b: A transform is used in Optimistic Mode to update the state immediately so a workflow can be completed even without network, with the assumption that it will sync with the server in the future.
Figure 3: In this scenario, we apply our optimistic transform on top of the latest state that we receive from the server.
Uber engineers who developed Optimistic Mode for the new driver app, from left to right: Chris McGrath, Flynn Howling, Chris Francis, Jatin Lodhia, and Yohan Hartanto.
Chris Francis

Chris Francis

Chris Francis is a software engineer at Uber. He currently works on optimizing network performance for Uber’s Android apps. He previously worked in a voice messaging startup in San Francisco.

Chris McGrath

Chris McGrath

Chris McGrath worked as a software engineer at Uber.

Flynn Howling

Flynn Howling

Flynn Howling is a software engineer at Uber. He currently works on improving the network performance of Uber’s iOS apps, and digging through data to find insights. Previously he worked at a fast growing startup in Canada where he helped write popular iOS apps.

Fletcher

Fletcher

Yohan Hartanto, a software engineer at Uber, currently works to scale the development of the driver app to be reliable and highly performant. In the past, his experience includes building Android SDKs for Fabric, and developing an Android music app for Amazon.

Posted by Chris Francis, Chris McGrath, Flynn Howling, chanceymathewsuber, Fletcher

Category: