Shippeo
Designing a real-time logistics control system
A supply chain visibility platform tracking millions of shipments across road, rail, ocean, and air. Designed for the 5% of shipments that need human attention.
Role
Head of Product Design
Timeline
2020–2022
Context
Shippeo is a French SaaS company providing real-time transportation visibility to enterprise shippers and logistics providers. The platform tracks millions of shipments across every transport mode, connecting carrier data feeds to a unified dashboard.
I joined as Head of Product Design after Tiller. The company had raised over $70M and was scaling into enterprise accounts. The product worked, but the interface hadn’t kept pace with the complexity of what the system could do. I built and led a design team to redesign the experience from the ground up while engineering rebuilt the frontend.
Key Interfaces
Four views, each designed for a different operational question.
Dashboard
The single entry point for every operator's day. Answers 'how are we doing right now?' in under 10 seconds and provides direct access to every part of the platform. Exception-first by default — what's on track fades into the background, what needs attention is front and center.
Shipment detail
The single source of truth for any shipment. Multi-modal journeys — truck to port to vessel to port to truck — read as one connected story. Every stakeholder gets the same picture without switching tools or chasing status updates.
Route planning
Before a shipment moves, someone needs to choose how it gets there. Options ranked by cost, speed, on-time rate, and CO₂ emissions.
Dock scheduling
The planner's primary tool — not tracking what's in transit, but anticipating what's about to happen. Delays cascade visually, making warehouse impact obvious before trucks arrive. Managers reallocate dock doors proactively instead of reacting to bottlenecks.
The Problem
The fundamental tension in logistics visibility is monitoring vs. acting. An operator watching 3,000 shipments doesn’t need to see 3,000 shipments. They need to see the 150 that are late, the 30 that are at risk, and the 5 that need a decision right now.
The previous interface treated all shipments equally. A flat table with filters. Users spent their mornings building the same filtered views, checking the same lanes, looking for the same patterns. The tool was technically powerful but operationally exhausting.
95% of shipments arrive fine. The product exists for the 5% that don’t.
The design problem was exception-first thinking: how do you design an interface that’s quiet when everything is fine and progressively louder as things go wrong?
Constraints
Enterprise logistics software operates under constraints that shape every design decision.
Multi-carrier data quality
Different carriers report at different frequencies: some live, some every 15 minutes, some once a day. The UI had to communicate confidence levels, not just positions. A dot on a map could be live or 8 hours old.
Map display at scale
Thousands of shipments on a single map. The challenge was clustering and adapting the level of detail to the zoom level, showing the right information density at every scale.
Diverse user roles
A shipper’s view of the same shipment is fundamentally different from a carrier’s view. Transport planners, operations managers, customer service, executives, each with different questions, different time horizons, and different definitions of “urgent.” The interface had to adapt to each role without feeling restricted.
Architecture Decisions
The structural choices that made the system usable at enterprise scale.
KPI abstraction layer
Instead of raw numbers, the dashboard surfaced derived KPIs: on-time delivery rate, exception rate, average delay. Each metric drilled down to the shipments behind it. The number was the entry point, not the destination.
Alert hierarchy
Three levels: informational (FYI, no action), warning (monitor, might need action), critical (act now). Thresholds are customer-dependent — what counts as critical varies by shipper, lane, and commodity. Alerts escalated automatically based on time-to-delivery.
Modular dashboard
Configurable widget grid. Each user role got a default layout, but operators could rearrange, add, or remove widgets. Power users built their own views; new users started with a sensible default.
Analytics layer
Real-time data to monitor delays as they happen, track carrier performance over time, measure on-time rates by lane, and surface CO₂ emissions across the supply chain. The analytics fed back into operational decisions, not just quarterly reviews.
Exception-first design
Every view defaulted to showing problems first. The shipment list sorted by severity. The map highlighted delays. The dashboard led with exception counts. Normal operations were background; anomalies were foreground.
Impact
The redesigned platform shipped to enterprise customers across Europe and North America. Shippeo has since raised over $140M in total funding, with the product becoming the default visibility layer for some of the largest shippers in the world.
Beyond the product, I shipped a design system that unified the visual language across every surface: components, tokens, patterns, and documentation that the team continued to build on after I left.
Every day spent managing was a day not building. I left to get back to an IC track, closer to the product, closer to the craft.
The best logistics tool is one that’s boring 95% of the time and decisive the other 5%.