Case study · Dispatchboard
One operations platform for scheduling, field work, and invoicing.
A custom web platform that replaces spreadsheets, phone calls, and paper job sheets with one system for dispatchers, field technicians, and customers, connected to the accounting system.
- Sector
- Industrial equipment maintenance
- Services
- Scope
- Discovery to production
- Core stack
- TypeScript, Next.js, React, Node.js, PostgreSQL
This case study shows how we would approach a representative project of this kind. It is not a record of a specific client engagement: names, interfaces, and plans are examples, and outcomes are described as what would be measured rather than as results.
Scroll sideways to see the full screen
§ 01The situation
Where things stand.
A maintenance company with a few dozen field technicians services industrial equipment at customer sites. Work orders arrive by phone and email, schedules live in a shared spreadsheet, and technicians complete paper job sheets that are re-typed into the accounting system at the end of each week.
The business is growing, but every new technician adds coordination work. Off-the-shelf field service tools were evaluated and set aside: none could model the company's service contracts, its equipment history, or its approval process for expensive parts.
What makes it hard
Scheduling by memory
Dispatchers balance skills, locations, and urgent call-outs in their heads, and a single absence disrupts the whole week.
Paper in the field
Job sheets arrive incomplete, photos stay on personal phones, and equipment history is hard to find on site.
Slow billing
Completed work waits days to be invoiced because every job is re-entered by hand.
Contract obligations tracked manually
Preventive maintenance visits required by service contracts are tracked in a spreadsheet and occasionally missed.
§ 02The solution
What we would build.
Each part answers one of the problems above, and each can be delivered and tested on its own.
- Dispatch board
- A planning view of technicians, skills, and jobs with drag-and-drop scheduling, conflict warnings, and suggestions for fitting in urgent call-outs.
- Technician app
- A mobile-first web app that works offline on site: job details, equipment history, checklists, photos, parts used, and the customer's signature.
- Contract engine
- Service contracts modeled explicitly, generating preventive visits automatically and flagging work that falls outside coverage.
- Customer portal
- Customers raise requests, follow progress, and download service reports without calling the office.
- Accounting integration
- Approved jobs become draft invoices in the accounting system, with labour and parts matched to existing products.
§ 03Architecture
How the pieces fit.
A layered view of the proposed system. The highlighted component carries the logic the rest of the system depends on, so it is designed and tested first.
01 Interfaces
- Dispatch board
- Technician app (offline)
- Customer portal
02 Application
- Scheduling
- Contract engine
- Jobs & equipment
- Notifications
03 Integration
- Accounting API
- Email & SMS
- Maps & travel time
04 Platform
- PostgreSQL
- Object storage
- AWS
- CI/CD & monitoring
§ 04Delivery plan
Delivered in stages you can review.
Each stage ends with something working that you can evaluate before committing to the next.
Stage 01
3 weeks
Discovery
Shadow dispatchers and technicians, map the job lifecycle and contract rules, and agree the first release.
Stage 02
10 weeks
Core platform
Job records, dispatch board, technician app, and contract engine, released to one team first.
Stage 03
6 weeks
Integration & rollout
Accounting integration, customer portal, migration from spreadsheets, and a team-by-team rollout.
Stage 04
Ongoing
Improvement
Scheduling suggestions, reporting, and refinements driven by real usage.
§ 05Outcomes
What you receive, and how success is measured.
Targets for each measure are agreed during discovery, using your current figures as the baseline, and reported on throughout delivery.
Deliverables
- Production web platform and offline technician app
- Migration of customers, sites, and equipment records
- Accounting integration with a reconciliation report
- Administrator and user documentation
- Monitoring, backups, and runbooks
Measured by
- Time from job completion to invoice
- Preventive visits completed on schedule
- Jobs that need a second visit
- Dispatcher time spent rescheduling
§ 06Start a project
Planning something similar?
Describe where things stand today and what needs to change. We will reply with questions and an initial view of scope and approach.
- 01
Share the context
A short description of the project, your goals, and any constraints you already know about.
- 02
We review it
We read it carefully and reply with questions or an initial perspective on the problem.
- 03
A first conversation
A call to explore scope, approach, and whether we are the right fit for the work.