Skip to main content
Uber logo

Start ordering with Uber Eats

Order nowOrder now

Start ordering with Uber Eats

Install the appInstall the app

Unifying Mobile Onboarding Experiences at Uber

December 14, 2017 / Global
Featured image for Unifying Mobile Onboarding Experiences at Uber
Figure 1: Three iterations of Uber’s mobile onboarding interface within the rider app highlight how we have streamlined its design over the years.
Figure 2: Previously cluttered designs stand in stark contrast to our new information collection interface.
Figure 3: Our rider app rewrite incorporates simplified information collection steps that provide concise instructions for getting started on the app.
Figure 4: In our mobile onboarding architecture, answers are submitted in response to questions and errors until a session is received.
Figure 5: In our redesign, information collection steps may be dynamically styled for differing onboarding scenarios, as when gathering user passwords (depicted above).
Figure 6: The back end may specify different sets of data gathering steps to collect identical data types.
Figure 7: Uber’s new mobile onboarding framework employs our open source RIB architecture.
Figure 8: During startup, our system’s Entry RIB attaches a Welcome plugin if applicable (on left); otherwise, it attaches an app default (on right).
Figure 9: In the rider app’s mobile onboarding framework, Welcome sends Entry a client-defined question Orchestrator uses to initiate the collection of information.
Figure 10: Orchestrator provides Transformer with questions and receives a list of InfoStep RIBs in return.
Figure 11: Transformer assembles a list of applicable InfoStep RIBs built to satisfy provided questions.
Figure 12: Orchestrator provides Sequence with a question and a list of InfoStep RIBs for mapping.
Figure 13: Sequence maps a question to batches of InfoStep RIBs for presentation and answer submission.
Figure 14: InfoStep RIBs transmit gathered data to Orchestrator which uses Info for intelligent storage.
Figure 15: Orchestrator submits answers to the back end formed by supplying Sequence provided questions to Info.
Figure 16: Orchestrator provides Sequence with errors to distribute amongst relevant InfoStep RIBs.
Figure 17: Sequence adjusts its index by distributing errors amongst InfoStep RIBs.
Figure 18: Orchestrator supplies Sequence data for mapping before sharing the session with the rider app.

Posted by Kyle Gabriel