Two years. Three platforms. One designer.

Redesigning the operator experience for European rail freight.

Client
Lineas
Year
2023
Role
Lead Product Designer
Skills
Product Strategy
UX/UI Design
Design Systems

ContextRail has a reputation problem

Convincing a company to move its shipping from road to rail is a hard sell. Rail is cheaper and cleaner, but it has a reputation: opaque, slow to communicate, hard to track. Fix that reputation, and the business case makes itself.

That was the challenge Lineas brought to the table. As Europe's largest private rail freight operator, they had the network. However, what they needed was the digital experience to match it. Operations were running on legacy systems, spreadsheets, and email chains. Customers had no visibility into their orders. Delays went unexplained.

OutcomeFrom 2.5 to 4.1

Over two years, I led design across three connected platforms serving engineers, operations teams, service providers, and customers.

Three months after launch, customer satisfaction score jumped from 2.5 to 4.1. The driver was straightforward: for the first time, customers could see exactly where their shipment was, what was causing a delay, and what was being done about it. Transparency, it turns out, is a competitive advantage.

2.5
Before launch
4.1
3 months after
+64% customer satisfaction score

My roleOne designer, three platforms, two years

I was responsible for the product experience across the three platforms, from early problem framing and feature definition through interaction design, validation and implementation.

I came in as lead product designer, sitting between the client, the delivery team, and design. That meant being in the room when product direction was being shaped, not just when screens needed drawing.

ResponsibilityWhat it meant in practice
Product directionHelped define features and roadmap alongside the client
ArchitectureModelled Lineas's operational structure and user flows
DesignDesigned core platform experiences and expanded the design system
TeamSupervised a junior designer, wrote feature briefings
DeliveryDocumented user stories and supported implementation

Key ChallengesThree towers, one truth

Lineas organized the solution around three connected platforms, each serving a distinct layer of the business:

Control TowerWho it servesCore purpose
Customer CareSupport agents + customersTrack & trace, proactive delay notifications, self-service portal
Supply ChainLineas operations + service providersPlan and monitor logistics across multi-partner ecosystems
Product & NetworkEngineers and plannersMaster data for locations, products, services, routes and pricing

The three towers shared a data layer: what engineers built in Product & Network became the foundation that Supply Chain operated on, and what Supply Chain executed became visible to customers through Customer Care. Breaking one would break all three.

Lineas diagrams
Lineas diagrams

Each role needed a different view of the same data, with different permissions and priorities — and they all needed to talk to each other.

The hardest design problems weren't the screens. They were the dependencies. I mapped all of this early using flow diagrams, getting the complexity on paper before anyone touched a component.

DesignMaking complexity feel familiar

Over two years and hundreds of sprint deliveries, three platforms took shape. The features themselves were complex but the more interesting challenge was finding the right mental models to make that complexity feel familiar.

Versioning: when one route becomes five

The Product & Network tower needed to let engineers manage multiple versions of the same route running simultaneously, each with its own validity window, weekday pattern, and schedule. A list view would have been unreadable.

Instead, I designed it as a yearly calendar grid: rows for each day of the week, columns for each week of the year, with coloured blocks representing each route version. Engineers could see at a glance which version ran when, where versions overlapped, and where gaps existed. Clicking a block surfaces its full validity schedule inline (no page navigation, no context loss).

Lineas calendar
Lineas calendar

What route planning could learn from video editing

Building a train route means assembling a sequence of legs and services, each with its own set of resources: traction type, driver, license, rail path, wagon. The structure maps almost perfectly to a video editor: a horizontal timeline of segments at the top, with resource tracks running below each one. I used that mental model deliberately.

The result is an interface where engineers can select any segment of a route and immediately see and edit the resources assigned to it in a detail panel below, without losing sight of the full journey. It's a pattern people already understand, applied to a domain where nothing like it existed before.

Lineas editor
Lineas editor

Seeing the whole journey at once

For transport operations, the challenge wasn't planning, it was visibility during execution. The Supply Chain tower needed to show, at any moment, where a shipment was in its journey, what had already happened, and what was at risk.

I designed the timeline at the top of each transport order as a Gantt-style view: segments colour-coded by status, with delay justifications surfaced directly on the relevant segment rather than buried in a separate log. Below it, the full order detail: live map position, wagon-level delivery breakdown, departure and arrival timestamps.

Lineas monitoring
Lineas monitoring

Building consistency without slowing the product down

All three towers drew from a shared design library that grew alongside the project. Every new requirement, including a new calendar interaction, status state, or permission variant, fed back into it. The library kept all three platforms visually and functionally consistent.

ClosingThe complexity doesn't disappear

After two years working across Lineas, I came away with a different view of what it means to simplify a complex product.

The goal isn't always to remove complexity. Sometimes the complexity is real, and hiding it only makes the product harder to understand. The more useful job is to make the relationships, constraints and consequences visible at the right moment, so people can build a mental model of what is happening and act on it.

That changed how I approach complex products. I now spend less time asking how to make an interface simpler in isolation, and more time asking what the user actually needs to understand, and what the product can do to make that understanding easier.