

PLATFORM
TIMELINE
TEAM
Once a bulk order is delivered, business owners split it into individual customer orders and notify each customer their orders are ready — similar to how a restaurant marks an order ready on a delivery app.
When notifications get delayed, customers forget about their orders and let them sit at the pickup point. And the platform takes the hit too: wasted product, and business owners losing motivation as their commissions slip.
As the platform's user base and order volume grew rapidly, business owners began struggling to keep up with sending order arrival notifications to customers.
⚠️
⚠️
⚠️
To find out, I partnered with the research team on an in-app survey and got 149 responses from active users. But surveys only tell you so much, especially with business owners who were often mid-task, mid-conversation with a customer.
So I went out to their stores and sat in for a day, watching how they actually worked with the app in the moment. Through the survey, those on-site observations, and a close audit of the existing feature, four core issues came into focus:
EXISTING DESIGN
Only today's orders are listed with no visibility to overdue orders from the past
→ More manual notification work for overdue orders.
Can't see which customers have already been notified
→ Repeated notifications can come across as spam.
💬
"Some of the orders have been sitting here for days, and I have to call them individually for order pickup."
38.5% of surveyed users found it hard to match physical items to app orders
→ Text-only item descriptions create cognitive load.Per-item checkboxes rarely used
→ Checkbox adds clutter without clear value for most orders.
Owners often need to assist customers in person while managing the app, making it easy to forget who still needs to be notified.
Users reported the page could take too long to load when receiving a high volume of orders, which caused drop-offs.

01 Extend visibility beyond today's orders
Expand the feature's capability from only sending notifications for the day's orders to also surfacing orders from the past 3 days — giving business owners a way to follow up on overdue pickups.
02 Faster order identification
Help business owners match physical items to app orders.
03 Easier tracking of order status
Allow business owners to find orders that haven't been notified yet, as well as orders that have been notified but are still awaiting pickup.
To improve clarity and efficiency as order volume grew, I introduced "Unnotified" and "Notified" tabs along with date-based filters. They solve two problems at once:
Can see notification status at a glance
Can pull up overdue orders from days ago without scrolling through a mixed list.
Segmenting orders this way also unlocked a performance win — instead of loading every pending order in one long list, the app could now load a smaller, filtered set at a time, which noticeably cut down on the loading delays users had been complaining about.
I also replaced plain product text with thumbnail images, giving users stronger visual cues to help them locate specific orders faster. Together, these changes created a clearer visual hierarchy and made it easier to complete batch actions with confidence.




Looking back, this was one of the projects that shaped how I think about design today. What actually moved the needle in this project for me was watching how our users work — they were multitasking, under time pressure, often mid-conversation with a customer. With the limited attention they could give the app, I iterated the design to help them act quickly on what mattered most. That experience is a big part of why I now start every project by trying to understand the situation someone is in, not just the screen they're looking at.
At the time, the original design was a solid MVP. It was simple and effective when our users handled just 10-20 orders a day. But as the product scaled, it broke under order volume it was never built for. I realized scalability isn't something to build in from day one either, the smarter move is designing for what's true now, then staying alert to when the product outgrows its assumptions.



