A self-directed exploration, done while working part-time at elmenus, into an in-house fleet app for their delivery couriers, tackling confirmation overload, low-spec devices, and GPS accuracy along the way.
ROLE
Product Designer
PRODUCT
Elmenus Mobile app
MY PART
Market research,UX, UI design
Overview
Scoping the problem and the challenge
About elmenus: Elmenus is a food discovery platform that helps people in Egypt decide what to eat and order it. Over 7 years it grew into the country's leading food discovery platform, reaching over a million users a month with information on more than 8,000 restaurants, and has taken online orders since September 2018.
The challenge: Build a fleet and delivery app for elmenus' own couriers, an in-house app in the spirit of UberEats or Deliveroo, so elmenus could complete its delivery ecosystem and serve its Cairo user base with a full dining experience end to end.
How this project came about. I was working part-time at elmenus to help improve their app. This particular exploration, researching, designing, and taking a courier-side fleet app to high fidelity, was self-directed within that role rather than an assigned brief, and I sat down with elmenus' actual product manager and delivery fleet manager to ground the direction. Properly understanding drivers also calls for dedicated UX researchers and a research budget, which I didn't have, so rather than reinvent the wheel, my call was to lean on observation: reading reviews on platforms already running at scale instead of running my own moderated studies.
Process
Running research, definition, design and testing as a loop
I'm a big believer in user-centered design, so I set a few steps to guide the work: understand the problem and challenge first, then iterate and validate before calling anything final.

Part 01
Mapping the ecosystem, then observing 3 competitor apps
Mapped the three-sided marketplace behind every order and read how riders talk about three competing delivery apps.
Every order moves through three actors who never see each other's screens: the customer placing the order, the restaurant preparing it, and the courier who is the only one physically present at both ends of the trip. Any friction in the courier's tools shows up as a slower, less reliable delivery for the other two.
Customer: our customers are the trigger of the process, they are using our app to order thousands of orders per day 24/7 days and we do our best and provide a usable process in the app in order to make their experience as frictionless as possible.
Restaurant: The main partners of elmenus. We provide tools and services that make their experience as frictionless as possible. They are receiving the order via elmenus Merchant tablet and start preparing the meals and update the status of it continuously.
Drivers - Main persona: who are also the partners of elmenus, they are the main persona here, So I need to create an experience that fits their need to receive, Approve, and deliver the order with no mistake and without frustration.

Context
Naming who, how and where before the challenge
There is so much missing data about the context, And it is better to understand the context on where/when/how the app will be used to define the challenge and the clearly needs.
Who: Only the verified driver by the agency (third-party), Most of them have experience in food delivery, working on shift bases most probably with UberEats - and others have no experience.
How: Using only cheap android phones and most probably with 3g coverage.
Where: The app will be used while riding to different pick-up and delivery locations on their motorbikes in order to get more accurate instructions and to be able to update the status.
Who
Only verified drivers brought on through a third-party agency. Most have food-delivery experience, working shifts, most likely with UberEats; some have none.
How
Real employees get blocked or repeatedly asked to re-verify their identity: frustration, lost time, help-desk tickets.
Where
On a motorbike, riding between pickup and delivery locations, needing accurate instructions and the ability to update status on the move.
Discover and understanding the user
Choosing observation over research I couldn't afford
Properly discovering and understanding users takes more resources, UX researchers and a suitable budget, and I didn't have either. There was no need to reinvent the wheel, though: plenty of platforms were already up and running at scale, so my decision was to go with Observation.
Plenty of food-delivery apps around the world had already solved parts of this problem well, so I went online to read how riders described the strengths and weaknesses of three of them.
Deliveroo Rider.
Reviews flagged battery drain from constant tracking. Riders called the app simple to use overall
DoorDash Driver
Reviews cited order glitches and dropped connectivity. Complaints about the app being slow to load on order pickup.
Fleet by Postmates
Notification and phone-number-change issues reported often. Riders wanted an easier way to reach support from the app
YouTube had plenty of onboarding and training videos for courier apps like Deliveroo, DoorDash, and Ubereats. Watching them helped me empathize more with the user flow, and understand more of the context, challenges, and needs users might have.
After the reviews and training videos, it was time to collaborate. I sat down with the product manager and the delivery fleet manager, who'd previously managed a fleet at another delivery company. I'm a believer in pairing the product designer with the product manager: the PM represents the business, so the company's goals matter as much as the user's needs. A unified design-only perspective sounds good in theory, but it doesn't hold up in real life. You need more than one perspective to solve the problem and satisfy both the users and the company.
Part 02
Tracing delivery delays back to 4 root causes
After a lot of discussions and going through the user reviews, various contextual situations, and interviewed the fleet manager, I assume the following are some of the pain points I can tackle in order to elevate the end-to-end user experience.
Too many confirmations: it was obvious there are too many confirmations required from the driver ( arrived at the restaurant, Picked up the item, on my way, etc ), there is a call to action for every single movement that the driver makes. It was a very frustrating thing for the driver especially when he drives.
An old device with low GB Ram and perform on low-speed networks: the main persona - a shift bases driver - have low incomes and for the sake of technology limited and the weak infrastructure of telecoms network in the country, We assume the driver will use the cheap android device and 3g connections for most of the time.
Geographic distribution: Our solution will be based on time-shifts and order bonuses. So we need to make sure that the driver is in the right place and ready to receive orders.
GPS accuracy: a cheap device will give you a cheap GPS chip which will reflect on the accuracy, So we need to reduce the use of CTA based on GPS locations and switch to be automatic ( Set a radius or range might be a solution ).
The goal of creating the user journey is to understand how to operate the app in order to accept and complete the jobs, I split up the experience into six stages/parts, each one of them has its own requirements and challenges. The flow starting with opening the app and waiting inside the hotspot in your area:

Part 03
Ideating with the PM and fleet manager
Sat down with the product manager and delivery fleet manager to turn the two biggest pain points into solution directions.
Brainstorming with the product manager and the delivery fleet manager gave me a chance to explore ways to fix the pain points directly, rather than design against them in isolation.
Too many confirmations
Reduce the confirmation taps by making arrival automatic: draw a radius around the restaurant location, and once the driver's GPS enters it, the server logs the confirmation on its own.

Geographic distribution:
Since the model runs on time-shifts and order bonuses, a driver needs to be in the right place to receive jobs. A heat map became the solution: a courier only shows online and eligible for orders while inside the heat map's range.

Decision
Apply the same radius-based logic to both problems: an automatic geofence at the restaurant for confirmations, and a heat map range for driver eligibility.
Trade-off
Automatic confirmation cuts the tap count drivers were frustrated by, but it now depends on GPS accuracy holding up on the cheap devices most drivers use.
After I had a better understanding of user behavior and the process, I have listed some key features of the app in order to create high-fidelity wireframes. Wireframes gave me some ideas on how things would look like and made my work for visual design easier.


Part 04
Designing the flow a courier runs on every trip
Took the wireframes to a light, glanceable interface built for one-handed use mid-ride. With the structure validated, I moved into high fidelity, keeping the palette light and the map as the dominant surface on every screen, since a driver checks it more than anything else in the app.

#1 Splash & Login Screens

#2 Incoming Request & Pick-up

#3 Drop-off the food

#4 Order History, Profile & Menu
How I validated it: A solution isn't worth much if I don't know whether it worked, so I ran usability testing on the high-fidelity prototypes: giving people defined task scenarios and measuring KPIs like task completion time and task success rate. The results themselves are confidential, so I can't share the numbers here, only the method.
What I'd do next. Widen usability testing to drivers on the lowest-spec devices in the field, since that's where GPS accuracy and network speed matter most, and validate the automatic-confirmation triggers against real geofence performance rather than assumptions.
" Cairo-based food discovery and ordering platform elmenus has raised $8 million in a Series B round, it announced today in a statement to MENAbytes.
The investment was led by Dubai-based Global Ventures and Cairo-based Algebra Ventures with participation from Tarek Sakr and Hamad Al Homizi, the co-founders of Kuwait’s 4Sale who recently partially exited their startup to NBK Capital. The round takes elmenus’ total raised to date close to $10 million."
Egypt’s Elmenus raises $8 million Series B to expand further into food delivery https://t.co/oCsOSOkYIl pic.twitter.com/2cic3bIo3H
— MENAbytes (@MENAbytes) February 3, 2020
This was a genuinely fun project to work on, and working with the elmenus team was a great experience, especially the collaboration and communication. I'm happy to walk through the research or any of the trade-offs in more depth.