Acme Prism

7-app suite I led for a Pacific Northwest land surveying firm. Unified 5 departments, saved about $500K a year, cut cycle times 13%.

Client name changed for confidentiality.

RoleSole Designer & Product Owner
ToolsSketch, Zeplin
Year2017–2021
Impact$500K saved annually, 13% faster cycles
PRISMProject Management · CRM · Central Database
PRISM + 6 connected apps
ProposerProposal generator
AtlasCounty maps + records
SchedulerCrew scheduling
Field PortalSite-visit docs
Zoho AnalyticsReporting · 200+ data points
Quickbooks OnlineAccounting
Outcomes
$500KSaved / year
13%Faster cycles
5Departments unified
The Bridge

5 departments, each with workarounds

A self-taught coder held the whole system together with band-aids, toothpicks, and glue. Impressive, but the team had hit the ceiling.

Five Teams

Five tools or one with room to flex

Building per-department apps means five sources of truth and a leadership team that can't see across them.

One Source

One database. Branches where the work demanded it.

Parent-child relationships that let broad processes get specific only where the work needed them to.

Seven Apps

7 apps over 4 years, $500K saved annually

Desktop scheduler, mobile field portal, per-role dashboards, customized Zoho and QuickBooks, a unified database underneath.

The Bridge

When I joined this Pacific Northwest land surveying firm in 2017, they had an internal system that I'll call "The Bridge." Surprisingly functional, honestly. Visually... rough. It was built by a technical person who taught themselves to code and held the whole thing together with band-aids, toothpicks, and glue. Impressive. But it was built in silos, one piece at a time, while the business kept running around it. Five departments, each with their own workarounds and frustrations and bottlenecks.

I spent the first weeks shadowing crews, sitting with coordinators, and pulling the COO into the same room as field leads. Same conclusion every time. The system worked. The people around it had learned how to make it work. But it had a ceiling, and everyone had hit it.

The Insight

One database. Branches where the work demanded it.

Five departments made five separate tools feel obvious. That would have created five sources of truth and no shared view of the business.

So the call was the opposite. One database, with parent-child relationships that let broad processes get more specific only where the work demanded it. Same language across departments, same data points, same definition of what a job is and where it's at. Enough flex that crews didn't lose the operational details that made their day work.

"It's powerful to have a tool like this, but it feels like we've hit a ceiling with how it's put together. Too many workarounds, too many fields, too many places to look."

"I'm excited to see how you can unlock the potential of all of our internal knowledge and skills. We have guys here that learned from their Dad and their Dad's Dad."

Stakeholder interviews, Week 1

Event storm structure

Actors

Scheduling, field crews, department leads

Events

Job created, crew assigned, field work completed

Commands

Schedule, update scope, send requirements

Policies

Department-specific requirements branch from one job record

The board stays as the desktop proof; mobile gets the same workflow shape in an inspectable format.

The Build

Seven apps. One database. Four years.

The rebuild took about four years and ended up as a 7-app suite. A custom desktop scheduler with drag-and-drop and integrated ArcGIS mapping. A mobile field portal for surveyors with GPS, offline capability, and time tracking. Customizable per-role dashboards with the metrics and queues each role lived in. Customized Zoho and QuickBooks for analytics and accounting. A revamped database and reporting layer underneath it all.

Every app pulled from and wrote back to the same source. Different surface, same definitions. A job ID in the scheduler was the same job ID in the field portal was the same job ID on the dashboard was the same revenue line in QuickBooks. That part is boring to describe and load-bearing for everything.

Desktop scheduler, Gantt timeline + field/tech notes
Map view, status-colored pins with filter panel
Per-role dashboard, today's jobs, pipeline, project queue
Mobile field portal, day list + return-visit modal

Four surfaces, one database

Where the unification shows up.

Scheduler, map, dashboard, and the mobile field portal. Drag, scroll, or use the arrow keys. Same data underneath each one.

The full mock suite is live at prism-suite.vercel.app. Same login across the desktop scheduler, map, dashboard, and field portal. Open the live suite to see the same job data across all four.

One small example of how the parent-child setup paid off. Field crews kept returning to sites because something specific to a department's workflow hadn't made it to the truck. I added a pre-leave checklist to the field portal that pulled site-specific requirements straight from the job record. Mandatory fields where they had to be mandatory, optional where they could be. Same UI for every crew. Different content per job type. Return visits dropped about 10% month over month after launch.

Beyond Software

The cross-department work doesn't show up in the metrics. It's what made the software stick.

I kept meeting with the five department heads after launch. New services and edge cases kept appearing, and the shared workflow had to absorb them without splitting back into five systems.

Same structure, same language, same data points across departments, with room for each team to run efficiently. Without that work, people would have invented new workarounds, dirty data would have piled up in the database, and the analytics would have grown blind spots. The architecture only stayed unified because someone kept showing up to keep it that way.

Impact

By the end, the work was saving about $500K a year. Cycle times dropped 13%. Field crew go-backs dropped 10%. Operations finally had a clear picture of what was happening across the business in any given week.

Planning and prioritization were most of the work. With contracted devs at high hourly rates, every poorly scoped sprint burned money fast. Code keeps getting faster. Choosing what to build, in what order, and where to stop still takes 70 to 80% of the effort.