Analdo Gomez

GoRight

Role

Lead Product Designer

Tools

Figma, Whimsical, Notion, Airtable

Year

Overview

A dispatch platform built as two products, made into one

GoRight builds dispatch software for roadside assistance — sending technicians to broken-down vehicles and coordinating that work between dispatchers and the technicians on the road. Before this project, Merlin, GoRight’s dispatch platform, had been built as two separate products: a desktop tool for dispatchers and a mobile app for technicians, developed independently on inconsistent patterns with no shared visual language between them.

I led the redesign of both as one connected system — from an audit of the existing platform through this shipped iteration, across research, ideation workshops, journey mapping, and UI design.

Merlin before this project — desktop and mobile spoke different visual languages.

Merlin before this project — desktop and mobile spoke different visual languages.

Pain Points

Two problems, one on each side of the platform

The initial audit surfaced two connected problems. On the dispatcher side, desktop and mobile ran on inconsistent patterns, which showed up as a steady, daily increase in support calls. On the technician side, the mobile app had no real-time updates, so confirming a location or a next step meant calling a dispatcher directly rather than checking the app. Getting a simple overview of on-road activity meant checking several disconnected tools and combining the results by hand.

Project Scope and Design

Audit, workshops, a journey map — then three decisions

I started with an audit of the existing platform, then ran a series of ideation workshops with technicians, dispatchers, and on-road managers. Those sessions mapped the navigation, the feature set, and the breakdown journey before a single screen was wireframed for either product. Three decisions from that process shaped how the platform actually got used.

Workshop board with sticky notes and phone mockups from a product ideation session.

An early ideation workshop — sticky notes and phone mockups mapping the on-road experience.

Hand-drawn wireframe sketch annotated during a product ideation workshop.

An early hand-drawn wireframe, annotated during a workshop session.

Sitemap diagram mapping navigation and permission boundaries for the Merlin platform.

Sitemap — navigation and permission boundaries across desktop and mobile.

User journey flowchart mapping the on-road breakdown process, from dispatch to arrival.

The on-road breakdown journey, from dispatch to arrival.

Leading with tasks, not KPIs

An early version of the homepage led with performance metrics. It looked clean on its own, but testing it with real technicians made the problem obvious: a KPI-first homepage buried the one thing they'd actually opened the app for — their tasks. I rebalanced the layout so tasks led and KPIs supported them, rather than the other way around.

The KPI-first homepage under review, before the rebalance.

The KPI-first homepage under review, before the rebalance.

Designing for how technicians actually respond

Dispatch software tends to assume a technician accepts a job instantly. In practice, that's not how the work happens, so the breakdown journey branches explicitly for a technician going to a job now versus later, with a notification either way — a real choice technicians make, not an edge case to design around.

The breakdown journey, branching for how technicians actually respond.

The breakdown journey, branching for how technicians actually respond.

Testing accessibility instead of eyeballing it

Contrast levels were monitored and tested rather than checked by eye. Copy went through a legibility pass. Any sound that could interrupt a technician mid-task was removed. None of that shows up in a screenshot — it shows up in who can actually use the app in the field.

Accessibility audit findings, tracked by section, question, and type.

Accessibility audit findings, tracked by section, question, and type.

Challenges

Building a shared system where there wasn't one

The deeper challenge behind this project wasn’t a screen — it was that dispatchers and technicians didn’t share a system to begin with. Status updates happened by phone and radio, which meant nothing was logged and nothing stayed visible after the fact. A dispatcher’s view of a job and a technician’s view of the same job could genuinely disagree, because each side was working from whatever they’d last been told rather than from a shared record. Building Merlin as a real connected intranet meant designing role-based access from the ground up — not adding a filter to one shared view, but deciding, screen by screen, what a dispatcher needed to see and act on versus what a technician did.

Asset Sensors
Merlin Analytics
Browser Based Platform
Fleet Managers
  • Budget Optimization
  • Fleet Uptime/Downtime
  • Geo Location Tracking
  • Fleet Maintenance
Mobile Platform
Operations Managers
  • Fleet Availability
  • Trip and Post-Trip Details
  • Active Communication and Support
  • Driver Roll Call
Capability mapping — what a dispatcher can do versus what a technician can, across both platforms.

The clearest sign that structure hadn’t caught up with that intent came later, in a workshop review of a more elaborate navigation. It made things worse: more depth, less clarity, and workshop notes flagged it directly as overcrowded. Fixing it meant grouping related sections and walking back to a simpler version the team had already moved past — treating a finished round of design as a mistake rather than defending it because it existed.

The navigation reversal, documented in the workshop notes.

The navigation reversal, documented in the workshop notes.

Strategic Contributions

What I owned, start to finish

My role covered the full arc of this iteration: auditing the existing platform, facilitating the ideation workshops, mapping the navigation and the breakdown journey, and designing the UI for both products using GoRight’s component library and design tokens. I worked directly with technicians, dispatchers, and on-road managers throughout the process, rather than validating finished designs with them after the fact.

The Final Phase

One connected system, closing the original gap

Merlin now runs as one connected system instead of two. A technician’s next task, a dispatcher’s overview, and a weekly report all pull from the same live signal — closing the exact gap that used to send technicians straight to the phone.

In beta, four of the five participating transportation companies stayed on as testers after launch. The real-time tracking built to solve the visibility problem also opened a path the original brief hadn’t asked for: geo-localization as a standalone, monetizable feature.

Merlin today — a technician's task queue, live.

Merlin today — a technician's task queue, live.

Merlin dashboard showing task counts and submitted-versus-received activity.

Dashboard — task counts, submitted vs. received, and activity.

Merlin task list table showing on-road jobs by status.

Task list — on-road jobs by status.

Merlin task detail view showing live route tracking on a map.

Task detail — live route tracking on a map.

Merlin desktop view showing live route tracking for an active dispatch.

Live tracking — an active dispatch in progress.

© Analdo Gomez / 2026