Two phases over twelve months on a construction SaaS product. Phase 1: user feedback became PM requirements, I turned those into a design brief and built a mobile command center for job-site safety. Phase 2: a new requirements doc became a UserTesting study, a first iteration, synthesis, and a guess-free dashboard system on web and mobile.
The project didn’t start with a Figma file. It started with user requirements and raw feedback from safety managers on active job sites. The PM translated that into structured requirements. My job was to turn those requirements into a design brief — and then into a mobile command center that made sense in the field.
Safety managers needed faster access to scattered safety tools — incidents, observations, inspections, hazards — from one place on mobile.
The PM consolidated feedback into product requirements: one command center, overview cards per safety module, scannable stats and drill-through paths.
I translated requirements into a mobile design brief — information hierarchy, card grammar, navigation depth, and what “done” looked like for Phase 1.
Exploration through iteration to a validated command center with flows into every safety module.
Incidents, observations, inspections, toolbox talks — all existed as separate modules. For a safety manager arriving on site at 7am, getting the full picture meant visiting four different areas of the app before walking the floor.
There was no view that answered: what’s open, what’s trending, who are the repeat offenders. Managers were doing the mental assembly work on top of a product that should have done it for them.
Safety work happens on-site, on mobile, often in glare, wearing gloves, with 30 seconds to spare. The existing data views weren’t designed for those conditions.
I owned the translation layer between requirements and design across both phases — writing the brief, designing the command center, planning the study, running synthesis, and delivering cross-platform dashboard cards.
In Phase 1, I took the PM’s requirements and wrote the mobile design brief that defined command center structure, card grammar, and navigation depth. In Phase 2, I received a separate requirements doc for five dashboard cards and turned it into a research-backed design process.
Phase 2 was mine end-to-end. I converted requirements into a UserTesting unmoderated study — wrote the plan, designed the first iteration prototypes, ran the sessions, and led synthesis into a guess-free redesign.
Led all Phase 1 mobile design: command center architecture, overview cards per safety module, drill-down flows from category to process to individual reports. Every screen answered status, trend, and next action at a glance.
Phase 2 extended to web and mobile in parallel. After synthesis, I designed the guess-free card system for both surfaces — same data, different density and layout decisions for each platform.
Phase 1 was mobile-only. Starting from the PM’s requirements and my design brief, I explored what belonged in the command center, iterated on how data should surface, and mapped a single navigation pattern across every safety module.
First explorations tested how to surface safety features as scannable list items — emergency contacts, safety checks, trip sharing, and module-specific entry points. The question wasn’t layout yet; it was what managers expected to see when they opened the app.
Once the command center structure was defined, I explored how to layer data onto it — safety score trends, open incident counts, critical items, and equipment status. Multiple iterations tested graph placement, card density, and how much a manager could absorb in one scroll.
I mapped a consistent three-tap path from the command center into hazards, observations, incidents, inspections, and safety checks: status and counts at the list level, detail only when something needs action. Deeper modules extended the same logic — inspections grouped by site, project, then unit; safety checks by category, process, then report. Managers see status at the top and act at the bottom, never the other way around.
Phase 2 started with a new requirements document for five dashboard data visualization cards. I turned those requirements into a UserTesting unmoderated study, designed a first iteration, ran the tests, synthesized the findings, and redesigned everything into a guess-free version on both web and mobile.
PM handed off requirements for five dashboard cards covering claims, hazards, incidents, hours lost, and attendance.
I converted requirements into a UserTesting unmoderated study — tasks, success criteria, and comprehension questions for each card.
Designed the initial card set from requirements and built prototypes for the study.
Ran unmoderated sessions with construction professionals, then organized findings by failure pattern in a synthesis doc.
Redesigned all five cards so users didn’t have to infer, calculate, or guess what they were looking at.
The study tested one question per card: can a construction safety manager understand what this is showing, and what to do next, without guessing? I wrote the plan, ran synthesis, and organized findings into three failure modes — not by card, but by the type of comprehension breakdown. That structure is what made the redesign decisions specific instead of generic.
The first iteration showed “time lost to injury” as projected vs. actual work hours. Participants stared at the chart without answering — they were trying to subtract in their head. They expected to see hours lost directly.
“I’d expect lost hours or days due to incidents — not projected vs. actual work.”
— UserTesting participantDirect monthly bar chart showing hours lost. Title matches the unit. The number is the message — no derivation required.
The hazard assessment gauge showed open items clearly, but labels were misread — “project total” meant different things to different participants. They understood something was wrong but couldn’t decide what to do.
guess-free fixSemicircular gauge with clarified labels, timeframe context, and percentages paired with raw counts. Status and action path in one glance.
The claims card was read as contractor billing because “injury” didn’t appear in the title. The attendance chart required subtracting two bars to get a ratio — arithmetic nobody should do at 7am on a job site.
“This looks like it’s tracking money. Is this contractor payments?”
— UserTesting participant, on the claims cardInjury context made explicit in naming. Trend sparkline for at-a-glance direction. Attendance replaced with a single percentage bar — attended vs. total, stated plainly.
One card passed without changes. It became the benchmark for the guess-free redesign. Every other card was measured against it: direct labelling, matched title-to-unit, a single dominant number.
The final designs applied every synthesis finding across web and mobile — same card grammar, platform-appropriate density.
This wasn’t a sprint or a single feature. It was a sustained year of design leadership on a complex enterprise product — research-heavy, cross-platform, multi-phase, and shaped by real user behavior.
Phase 1 started with user feedback and PM requirements — I wrote the design brief and designed the mobile command center from scratch. Phase 2 started with a separate requirements doc — I converted it into a research plan, tested a first iteration, and redesigned based on synthesis. In both phases, I was the person who translated requirements into design decisions.
Phase 2 research was fully mine: study plan, UserTesting setup, first-iteration prototypes, unmoderated sessions, synthesis doc, and redesign. Findings were organized by failure mode, not by card — which turned a list of problems into a design brief with three clear principles.
Phase 1 was mobile-only. Phase 2 delivered the same five dashboard cards on web and mobile simultaneously — same data grammar, different density and layout per surface. Not a resize; two genuinely different design problems solved in parallel.
The command center architecture from Phase 1 — category overview, process drill-down, report detail — informed how Phase 2 cards were structured. Status at the top, action at the bottom. That hierarchy carried from mobile navigation into dashboard data visualization across both platforms.
Phase 1 worked because I translated PM requirements into a design brief first — defining hierarchy, card grammar, and navigation depth before any screens existed. That brief became the reference point for every iteration decision that followed.
Phase 2 could have gone straight from requirements to final designs. Instead, I built a UserTesting study first. That one decision — testing before committing — caught comprehension failures in four of five cards that looked fine on paper.
Organizing findings by failure mode (“users had to do math,” “labels were misread,” “title didn’t match content”) instead of by card turned a research report into a redesign brief. The way you organize what you learned shapes what people can act on.
The guess-free redesign wasn’t a visual cleanup — it was a comprehension standard. Every card had to pass one test: can a manager understand this in 10 seconds without inferring anything? That principle applied equally to web and mobile, even though the layouts were completely different.