The challenge
The company ran its whole operation (clients, jobs, crew scheduling, work orders and invoicing) on a Microsoft Access application built around 2010. It still worked, but it had stopped keeping up with the business:
- No connection between screens. To go from the crew schedule to a job or an invoice, staff had to close one screen and open another. Accepting a bid didn't put the job on the schedule.
- No visibility. There was no dashboard showing unbilled jobs, invoices more than 30 days past due or the bid pipeline.
- Billing done twice. Progress billing (AIA payment applications) lived in a separate spreadsheet with no link to the invoices, and change orders didn't roll up against the original contract.
- Nothing for the field. Crew leads couldn't clock in, submit change orders or attach job-site photos from their phones. Photos were texted to the office and filed by hand.
- Billing took a full day when the owner felt it should take three to four hours.
There was a further complication: the original database couldn't be copied. The application belonged to its original developer, so there was no backup file to migrate from.
The approach
Discovery without a database. Instead of reverse-engineering a file, I rebuilt the data structure from live walkthroughs, screenshots and conversations with the owners. That covered every screen, field, dropdown value and business rule, such as "the date an invoice was sent drives all past-due tracking".
Design the owners could react to. Before writing code, I produced a design proposal showing the new screens side by side with the old ones. The owner approved it at the first review.
Build to production standard from day one. The pilot version is the production version: real sign-in, real security and automated tests, not a throwaway demo. I use AI-assisted development to move quickly, and every part of the system is designed and reviewed against the same security standards I apply as a CISO.
What was built
- Live dashboard with each user's own layout: unbilled jobs, past-due invoices, bids awaiting a decision, pipeline value and open change requests.
- Drag-and-drop crew schedule linked directly to jobs and invoices, with week and month views, multi-day jobs, company holidays and undo.
- Jobs, estimates, work orders and invoices in one connected flow, with branded PDF invoices and win/loss tracking on estimates, including a required reason for each change.
- AIA progress billing and change orders tied to the original contract, replacing the separate spreadsheet.
- Job costing: material receipts plus labor time from the field add up to the true cost of each job.
- Mobile field app for crews: clock in and out, see the week ahead, fix their own time entries, submit change requests and attach photos to the job.
- Reports: accounts receivable aging and revenue, with drill-down and PDF export.
Elite Information Services



