UTA Community Ride
Volunteer drivers who take seniors to medical appointments used to wait six-plus weeks for a paper-slip reimbursement nobody could really verify. We made the rides GPS-verified and the payment automatic, so drivers get paid in days instead of weeks.
The problem
Through the federal 5310 program, states like Utah reimburse rides for seniors who can't drive themselves and live where there's no public transit, usually trips to non-emergency medical appointments like dialysis. The driver is normally someone the rider already knows, a neighbor or a family member, and the state pays them a small per-mile or flat reimbursement.
The whole thing ran on paper. The driver filled out a slip, and it made its way to UTA, where someone reviewed it for compliance, ran it through finance, and mailed a check. From the ride to the check was often six to eight weeks. And there was no real verification. You took the driver at their word, and a paper slip had no way to prove the ride ever happened.
What we built
We turned it into GPS-verified rides booked and tracked in a real iOS and Android app. The driver schedules the ride with their rider, and the app marks the GPS location at pickup and drop-off, round trip, confirmed either by a text to the rider or a signature on the driver's phone.
Both the rider and the driver have the app, with different permissions, though given who the riders are, the driver usually does most of the work, and if the rider has no smartphone at all, the driver can run the whole thing. Underneath, it's multi-tenant with role-based access, so UTA can add new agencies as their own tenants, and each person sees only what belongs to their role, whether rider, driver, or agency staff. Building it as a true native mobile app, instead of the browser-based apps the team usually shipped, meant a different paradigm and a real learning curve.
Moving the money
The piece that made this one different is that it actually moves money. Every other app we'd built was an approval layer that handed off to the client's finance system to do the paying. This one had to do the paying itself. We used Dwolla for it: the agency funds a Dwolla balance, and the moment a ride is verified, the payment to the driver is on its way. It clears at ACH speed, so the driver has money in days instead of waiting out a six-week paper trail.
My role
I wrote the technical response to the RFP. It was the early ChatGPT days, and I used it to learn the program domain while I drafted, working out what each requirement was really asking and how our approach answered it. Then I led delivery: I owned the vision for how we'd implement what they asked for, and I ran a team of four for six months to ship the web, iOS, and Android apps for the State of Utah.
This was Utah's second attempt. The first vendor had spent about two years and $1.5 million without landing a product that met the requirements. We delivered in roughly half the time and a third of the cost, and ours is the one in production. It went through its pilot last year and is live now, with more agencies coming on under UTA. It's early in the rollout, but the core change is already real: a process that took six-plus weeks now takes days.