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

Zebing Zong
13 min readintermediate
--
View Original

Overview

This article discusses the development of the Real-time Earnings Tracker feature in Uber's new driver app, codenamed Carbon. It highlights the design process, technical challenges, and the integration of feedback from driver-partners to enhance the user experience.

What You'll Learn

1

How to design a real-time earnings tracking system for mobile applications

2

Why data consistency is crucial in mobile app earnings displays

3

How to utilize RIBs architecture for scalable mobile app features

Prerequisites & Requirements

  • Understanding of mobile app architecture and real-time data handling
  • Familiarity with RIBs architecture(optional)

Key Questions Answered

What are the main challenges in implementing a live earnings system?
The main challenges include data latency and reliability, data consistency, and product correlation. These issues arise when the app pulls data in real-time from various backend services, which can lead to outages and inconsistent user experiences. Addressing these challenges is crucial for maintaining trust and usability in the app.
How does the Real-time Earnings Tracker improve user experience for drivers?
The Real-time Earnings Tracker enhances user experience by providing drivers with real-time insights into their earnings, allowing them to see their earnings per trip, day, and week. This feature was developed based on direct feedback from drivers, ensuring it meets their needs and improves engagement.
What architectural patterns were used in building the Real-time Earnings Tracker?
The Real-time Earnings Tracker was built using RIBs architecture, which allows for scalable and modular development. This architecture supports complex transitions and enables the addition of new features without disrupting existing functionality, making it ideal for the dynamic needs of the driver app.

Key Statistics & Figures

Percentage of drivers using the Real-time Earnings Tracker
86 percent
This statistic reflects the feature's adoption rate among drivers on days they are picking up riders, indicating its effectiveness and value.

Technologies & Tools

Architecture
Ribs
Used for building the new driver app to facilitate scalable and modular feature development.
Backend
Real-time-api Gateway
Acts as an interface between the app and backend services, serving as the source of truth for tracker card data.

Key Actionable Insights

1
Implementing a real-time earnings display can significantly enhance driver engagement and satisfaction.
By providing immediate feedback on earnings, drivers feel more connected to their performance and can make informed decisions about their work, leading to increased productivity.
2
Utilizing a push-based data model can reduce server load and improve app responsiveness.
Transitioning from a pull-based to a push-based system minimizes the frequency of server requests, which can alleviate issues related to data latency and improve overall user experience.
3
Incorporating user feedback during the design phase is essential for creating effective features.
The Real-time Earnings Tracker was developed with direct input from drivers, ensuring that the final product addresses their specific needs and enhances usability.

Common Pitfalls

1
Failing to ensure data consistency across different app components can lead to user confusion.
If one part of the app shows outdated earnings while another displays current data, it undermines user trust. Implementing a unified data management strategy can help mitigate this issue.

Related Concepts

Real-time Data Processing
Mobile App Architecture Patterns
User Experience Design In Mobile Applications