Skip to footer

Mobile

Powering UberEATS with React Native and Uber Engineering

A recipe for success: how Uber Engineering used React Native to optimize UberEATS' Restaurant Dashboard app for mobile.

Employing QUIC Protocol to Optimize Uber’s App Performance

Implementing QUIC protocol against TCP over cellular networks on our apps led to a reduction of 10-30 percent in tail-end latencies for HTTP traffic.

Measuring Kotlin Build Performance at Uber

To determine if it made sense to adopt Kotlin for our Android monorepo, Uber's Mobile Engineering team measured Kotlin build performance at scale across a variety of project structures.

Engineering the Architecture Behind Uber’s New Rider App

In November 2016 Uber unveiled a sleek new rider app. The app implements a new mobile architecture across both iOS and Android. In this article, Uber Engineering discusses why we felt the need to create a new architecture pattern, and how it helps us reach our goals.
Why We Decided to Rewrite Uber's Driver App

Why We Decided to Rewrite Uber’s Driver App

Uber engineers outline how we came to the resource-intensive decision to rewrite, rather than migrate or update, our driver app.
Architecting Uber's New Driver App in RIBs feature image

Architecting Uber’s New Driver App in RIBs

In our continuing series about building our new driver app, Uber engineers discuss designing the architecture of the mobile app using RIBs, our open source mobile development framework.
Scaling Cash Payments in Uber Eats - feature_image

Scaling Cash Payments in Uber Eats

Uber's new driver app leverages its offline mode along with a cash-drop system organized around restaurants so that Uber Eats customers can pay for deliveries with cash.
Uber Beacon app screen

Engineering Uber Beacon: Matching Riders and Drivers in 24-bit RGB Colors

In our ongoing series about rewriting the Uber driver app, engineer Kevin Babcock explains how we built the connection between the app and the Uber Beacon device, which displays a color remotely selected through a rider's app.
Uber driver

Building a Real-time Earnings Tracker into Uber’s New Driver App

What began as a means of showing Uber's driver-partners their real-time earnings quickly became an extensible means of communicating not just earnings, but also incentives and other useful information within our new driver app.
Uber Lite pickup screens

Expanding Access: Engineering Uber Lite

Many people around the world use Android phones based on hardware developed in 2015 and earlier. Uber engineers explain how they developed a lightweight rider app to serve this global audience.

Building m.uber: Engineering a High-Performance Web App for the Global Market

In this article, we discuss how Uber Engineering designed m.uber, a lightweight web app that delivers a native app experience for riders on mobile browsers.

Scaling Mobile Device Management for macOS with Chef at Uber

Uber's IT Engineering team scaled mobile device management on macOS by leveraging open source tools and custom API-driven Chef cookbooks.

Best Practices for Unit Testing in React Version 16

Uber ATG Web Platform intern Anat Kleiman shares her advice for testing React version 16 components when altering application logic.
Uber Freight App

Building the New Uber Freight App as Lists of Modular, Reusable Components

We redesigned the Uber Freight app with RIBs, our open source plugin architecture, to enable quicker feature rollouts and an improved user experience.
Uber driver app screen

Building a Scalable and Reliable Map Interface for Drivers

In our ongoing series about rewriting the Uber driver app, engineer Chris Haugli explains how we designed the map display to be resilient, and always show the most useful information.
Uber driver app and RIB tree

Activity/Service as a Dependency: Rethinking Android Architecture for the Uber Driver App

Architecting the Uber driver app for Android, which needs to run for extended periods of time in the background, involved a unique idea where Activities and Services were not included in the structural foundations.

Faster Together: Uber Engineering’s iOS Monorepo

The Uber Engineering mobile team migrates to a monorepo that uses Buck to test and deploy iOS and Android code faster and more efficiently than ever before.
Carbon: Optimistic Mode article feature image

How Uber’s New Driver App Overcomes Network Lag

In our continuing series about building our new driver app, Uber engineers discuss building its Optimistic Mode feature, which lets the app continue functioning while traversing network lag areas.
How to Ship an App Rewrite Without Risking Your Entire Business

How to Ship an App Rewrite Without Risking Your Entire Business

Rather than shipping out our new driver app as a simple update to Android phones, Uber engineers delivered a dual binary package, enabling a safe and structured rollout of the new app while maintaining support for the previous version.

Driver Profiles: How Uber Engineering Celebrates Drivers

Uber Engineering built a new microservice to power Driver Profiles, an in-app platform that enhances the Uber experience by celebrating drivers.

Popular Articles