Back

Relay Import

Role
Lead Product Designer
Timeline
3 weeks (2025)
Themes
AI Design · Human-in-the-loop AI · Enterprise Workflows
Impact

Two in-flight products merged into one adaptive flow, shipped in 3 weeks without moving the date.

CSAT rose from 3.9 to 4.1 across the goal period, covering this and several other features launched under a shared adoption target.

Relay is Amazon's work management tool for engineers. Teams were planning and tracking work across Jira, Asana, spreadsheets, and other tools, but had no way to bring that work into Relay without manually recreating it. Import was the unlock. A v1 text-to-task feature existed and a structured file import was being built separately as a second feature. I designed v2 of the entire import experience — three weeks to deadline.

Mapping the problem before designing

Three weeks to deadline. I mapped the end-to-end migration journey to orient fast — documenting where the current flow broke down and the gaps the requirements doc hadn't addressed. This became the backbone of every scoping conversation.

A user with a file to import hits a wall with no way through.

📄
Source file
A Jira export. A project spreadsheet. Years of work to migrate.
User starts here
Review screenAll at once
1Map columns
2Validate data
3Resolve errors
4Preview tasks
No guidance. No path forward when something breaks.
Four jobs. One screen. No way through.
Abandoned
User leaves. Tasks never created. Migration doesn't happen.
Where most users ended up

User flow: One-time migration

Out of scope
In scope
P1
Before Relay
Generate source fileModify format
Import flow
Upload / pasteMap columnsPreviewCreate tasks
Post-import (P1)
NestingDuplicatesPrep tasks
Team using Relay

Two features, one door

The original design asked users to choose a processing mode before they'd even provided their data. It's like asking someone how they want their food cooked before they've picked a dish.

if input_type == "structured" route_to("/import/csv")
if input_type == "unstructured" route_to("/import/ai")

But users don't think in terms of structured vs. unstructured. They just have data and want to bring it in.

I flipped the sequence. Provide your data first. The system analyzes what you give it and recommends a processing mode. Instead of “structured” and “unstructured,” the system asks: do you want us to follow your structure exactly, or suggest tasks and hierarchy? Users can override if their goals differ from the recommendation.

File upload

Direct import recommended for structured data

Paste text

AI suggests tasks and hierarchy for unstructured content

Giving users control

Smart defaults get users started, but they can always override. These panels let users see exactly how their data will be interpreted and adjust when needed.

Processing mode expanded

Users can expand the processing mode section to understand exactly how their data will be interpreted and override if needed.

Hierarchy constraints

The system respects project hierarchy rules — showing users when suggested nesting would violate constraints and offering alternatives.

From raw notes, to actionable tasks

Paste meeting notes, a requirements doc, or any unstructured text. AI interprets the content and suggests a task hierarchy. Review, edit inline, deselect what you don't want, and create.

Making AI decisions reviewable

For the structured file path, AI maps columns automatically — but users needed to trust those decisions. The mapping table shows confidence indicators, previews of actual values, and clear paths to resolve conflicts — making the system's reasoning visible and editable.

Keep the good data, flag the bad

In the original build, one bad value invalidated an entire column. The redesign surfaces errors at the top with filtering and handles bad values per-cell so the rest of the data stays usable.

Outcome

Import was the unlock, the missing piece that turned a stalled migration story into something users could actually finish. The prototype became the team's shared reference: engineering built from it, PM used it to scope what came next.

  1. 01

    Shipped on an aggressive timeline

    Three weeks from deadline when I picked it up. The date never moved.

  2. 02

    Merged two products into one

    Structured file import and AI text-to-task were being built as separate features. They launched as a single adaptive flow behind one entry point, with the system recommending the processing mode instead of asking users to pick it.

  3. 03

    Launched something people could actually use

    Replaced the screen most users abandoned, one that asked four jobs at once, with a guided path through mapping, validation, and review.

3.94.1CSAT increased from 3.9 to 4.1

CSAT across the goal period. Import shipped as one of several features under a shared adoption and CSAT target, so this number reflects the team's work rather than mine alone.