Kabir Shrivastava.

Fynd TMS, From the first PRD to 10,000 daily deliveries.

From the first PRD to 10,000 daily deliveriesVisit Fynd TMS

A TMS (Transport Management System) moves shipments from warehouses and hubs to customers (in this case, just the last mile). Operations teams place shipments into trips, assign them to drivers and follow every trip live, while drivers complete pickups and drops on a rider app.

The launch deadline was ‘yesterday’. There was no time for in-depth user research, so we learnt the domain and improved the platform by shipping. The first release focused on getting a trip created, completed and tracked, while future releases added further features.

Over nearly three years (as the sole designer on the product), my work spanned the operations platform, the rider app, other related tools and the design system. That is impossible to show in one case study, so here are the important bits: one trip through both products, then three changes that came from watching the work on the ground.

0 → 10,000

average daily deliveries

0 → 15+

businesses in Mumbai

Company
Fynd, a Reliance company
Duration
22’–25’
Role
Product Designer
Team
Me
Atharva Shetye (PM)
Ahmed Ropewala (EM)
Platforms
Operations platform (web)
Rider app (Android)
Project type
0 → 1 product
B2B design system (Novus)

01One trip, desk to doorstep

A trip is the point of focus in a TMS. Here is how one is created and managed.

Create the trip

Operations teams select shipments and create trips which get assigned to drivers.

Operations platform · selecting shipments, creating a trip, assigning a driver

Complete the deliveries

The driver receives the trip and moves through pickups and drops, capturing proof of delivery.

Rider app · trip received, pickup scanned and proved, on the way to the first drop

Monitor progress

Operations teams follow the trip and step in when something needs attention.

Operations platform · the trip goes live, followed stop by stop

02Trip creation time reduced from 40 minutes to 5

Trips followed a fixed task sequence, one task after the next. But customer availability, cancellations and local road conditions meant that the fixed order did not always work on the ground. The drivers also had better knowledge of local roads, and at times knew how to optimise routes better than the system itself.

Trip planning was taking 40 minutes because drivers, with trip sequences allocated, were sitting with operators (who could move the task sequence around) and telling them the best working routes.

I pushed to extend that flexibility to riders, reducing manual coordination. Riders could choose their next task while the suggested sequence remained visible. It came with certain limitations: a shipment still could not be dropped before it had been picked up.

Rider app · from a fixed order to a list, with drops locked until their pickup

Operations managers got a comparison of planned and actual time and distance, so they could discuss deviations with drivers without enforcing a sequence that might not fit the ground.

Operations platform · a detour shown as it happens, then planned against driven

40 → 5

minutes to create a trip

Trip creation, as a process, went from 40 minutes to 5. Operations managers got that time back for vehicle-load optimisation.

03Operators looked for drivers, not trip numbers

Trip numbers were the main way to identify trips on the platform in the first release. At the warehouse, operators asked where a driver was and which direction they were headed. They searched for the person, then worked backwards to the trip.

I made the driver’s name the primary identifier. Since a driver could only be on one trip at a time, their name could identify the active trip.

The card continued to evolve with shipment counts, vehicle utilisation and a completion bar. Making it smaller was not enough. It needed to remain useful without being opened.

Trip management · the trip card, from trip number to driver, one change at a time

The card with a specific task’s details was also modified similarly, keeping the customer’s name as the primary identifier.

The task card followed the same path, task number → customer’s name

04A rider app built for a phone under a plastic cover

Rider apps were difficult to access as references, so I asked delivery riders who came to my house to show me theirs, at least ten of them over time, and rode pillion with drivers to see how the app fitted into their work.

Phones were mounted at arm’s length, often under plastic covers, and their screens were dark, which read better day and night.

Hence the task was to simplify information cards and make the touch targets big. The deadline became prominent, package and task counts communicated workload, the first pickup and last drop gave direction, and the map reflected the same.

Trip assigned · from a task list to a trip summary, v1 to v3

I made controls larger for phones used through plastic covers. The main action changed with the rider’s location, Navigate while travelling to a stop and Call once they were close.

Task details · Navigate leads while far away, Call leads within 300 m

These changes shipped, though we did not formally measure their effect on rider error rates.

05Impact

0 → 10,000

average daily deliveries

0 → 15+

businesses

40 → 5

minutes to create a trip

Around 500 trips a day, with about 60 drivers on the rider app.

TMS taught me to make decisions with what we knew, then revisit them when we learnt something new. Sometimes research is hidden within the work, and we don’t treat it as such because it’s not an interview or a session in a proper room where we are observing the users. Quickly moving SaaS platforms are a different game.

Next

Remora, Tangible A pocket e-ink device that gives you one prompt to look up from your phone All work