Palermo Field Services
A dispatch and invoicing system for a 30-technician HVAC and plumbing company, replacing paper work orders and end-of-day phone check-ins.

Industry
Field Services
Timeline
12 weeks
Team
2 engineers, 1 designer
Category
Custom Software
Where things stood
Palermo's dispatchers were assigning jobs over the phone and technicians filled out paper work orders that didn't reach billing until days later, so invoices lagged completed work by up to a week.
How we got there
Dispatch and scheduling board
Built a live dispatch board showing technician location, current job, and availability, replacing phone-based assignment with drag-and-drop scheduling.
Mobile work orders
Gave technicians a mobile view to log parts, hours, and photos on-site, feeding straight into invoicing instead of a paper form turned in at end of shift.
Same-day invoicing
Connected completed work orders directly to the billing system so an invoice goes out the same day a job closes, not whenever paperwork catches up.
What changed
30
Technicians scheduled through the new dispatch board
Week → same day
Time from job completion to invoice sent
~25%
Fewer double-booked appointments
Tech stack
Next.js
Runs the dispatcher's live scheduling board.
React Native
The technician-facing mobile app used to log work orders on-site.
Node.js
Connects completed work orders to scheduling and billing.
PostgreSQL
Tracks technicians, jobs, parts, and invoices in one place.
Twilio
Sends the technician's arrival-time text to customers automatically.
Stripe
Processes invoice payments directly from the completed work order.


