Roadie Delivery App Redesign

Results

Designed and delivered scalable UI components, improving app performance and increasing volume capacity by 10 times, supporting 60 deliveries per driver.

Overview

Roadie drivers use Roadie Delivery app to deliver orders. When delivering a package, drivers need to complete a series of tasks on the app.

Drivers need to take delivery photo, collect recipient's signature, add delivery notes and add parking or toll expenses. These tasks are displayed as a list of accordions that pops up at the bottom of the screen, on top of a map.

Challenges

Speaking with engineers, I discovered two main problems with the existing design.
  • Use of Accordions

    Expanding and condensing accordions automatically required series of front-end checks
  • Map Refreshes

    Refreshing the map behind the task drawer periodically creates computational load

Design Exploration

Based on challenges, we defined the requirements for a new design solution. From a technology standpoint, the new design should replace accordions and be full-screen. However, I also used this opportunity to improve the design. The existing design uses custom layouts which is not scalable. Hence, from a design perspective, the new design should consist of scalable components and provide instructions and feedback, improving the UX.

New Design

Why the new design just works

Consistent Interaction

The old design used various interactive elements and button style that changed depending on the task. The new design streamlines interaction by making it consistent.

Predictive Behavior

Tapping on each tasks surfaces a bottomsheet, making the new design predictive in its behavior.

Provides Feedback

The new design provides a summary of the information entered by the user as feedback.

Keeping the Good

While the new design introduces changes, I kept concepts from the old design that worked well, although slightly reinterpreted to fit the new design.

For instance, the old design used different surface color that allows the user to easily differentiate between required and optional tasks. I kept the concept similar, using a darker color for the required tasks and a lighter color for the optional tasks. I also added a label to call out the optional tasks which was missing in the old design.
Similarly, the new design mutes completed tasks like old design, directing the user's attention to pending tasks.

Takeaways

Working on this project was a great experience. It achieves a lot more than making the app look beautiful (which is important!). It removes technical complexities, offering a lag-free experience to drivers and enables business to scale volume capacity while making the experience intuitive.

It has taught me to think of designs as part of design system and how efficient design can be scaled and adapted to fit future requirements. Since its introduction, we've utilized this component for more than ten task items.