← Work

Outcome

Operators approve a ready-made fix instead of writing a ticket, so broken lockers reach the right team sooner.

Time from issue to ticketBefore 3 daysAfter 3 to 6 hours
Usability score (UMUX, out of 100)Before 65.171.6

Time to ticket is an early signal we're still monitoring: offline lockers used to surface after about 3 days through driver activity, customer activity, and support issues. The same events now raise an alert as they arrive, usually within 3 to 6 hours. UMUX compares the end of Q2 with the end of Q3 2026, before and after launch.

Problem

Depot and regional operators found broken lockers through driver reports or by checking the portal by hand. Writing every ticket by hand delayed repairs.

I tested my code prototypes with depot operators.

How it works

Alert Tracker with a locker offline alert, its plain-language overview and evidence, and a three-step fix plan.
The Alert Tracker: the alert in the middle, its fix plan on the right.

Propose

Vera explains what happened, the evidence behind it, and what it affects, so operators can judge the reasoning before they act.

A decision I reversed

My first draft rated every alert, for example "Confirmed, 93%". A score asks operators to trust the system's certainty. Evidence lets them check it, so I replaced scores with what happened, the evidence, and what it affects.

First draft

First draft: the alert rated Confirmed at 93 percent with a range of 88 to 97 percent and evidence tagged Decisive.

Final

Final: the alert explains what happened, the evidence in plain words, and what the plan does.

Approve

No ticket goes out without an operator's approval. Once approved, Vera raises the ticket in nxt and relays the provider's replies.

Every plan step says what it does and why. Nothing runs without the operator's approval, and steps that can't be undone ask for a second confirmation.

Fix plan after approval, each step marked done and a new nxt ticket.

Keyboard first

Operators clear the queue without the mouse: arrow keys to move, A to approve, S to snooze, D to dismiss.

Verify

An activity log shows each ticket's progress as the provider replies. Operators get a notice on any page when the repair is done and the locker is back in service.

Repair news reaches operators wherever they work, at the foot of the navigation, instead of waiting inside the tracker.

Activity log with the provider's replies relayed by Vera.
Repair done notice at the foot of the navigation.

When it's unsure or wrong

When it's unsure

When the evidence is thin, the proposal says what the data can't rule out and gives a safe default.

Overview that says what the data can't rule out and recommends a safe default.
The overview names what the data can't rule out, then the safest next step.

When it's wrong

A rejected plan never runs. The operator gives a reason and can still write and raise the ticket by hand.

After dismissing a plan, a ticket the operator writes and raises by hand.
After a dismiss, the ticket starts with the evidence in plain words.

Process: Discovery interviews with 9 depot and regional operators, 2026. Card sorting ranked which alerts to build first, and 1 validation test checked the prototype.

What I learned

I prototyped every interaction in code and tested it with operators. Figma came last, for refinement before engineering shipped it.

First draftFinal
Alert Tracker with a locker offline alert, its plain-language overview and evidence, and a three-step fix plan.First draft of the Alert Tracker with badges, confidence levels, and strikethrough diffs.

I spent several rounds polishing how confidence looked before testing whether operators needed it at all. They didn't. Next time I'd test the words and the decision first, and the visuals after.