How we built a full-stack job scheduling platform, mobile app, and SIMPRO integration for Rope Access Technicians — across web, iOS, and Android.


Rope Access Technicians needed to go beyond what SIMPRO offered out of the box. Their scheduling was manual, their timesheets were paper-based, and their field teams had no visibility into upcoming jobs, equipment requirements, or who they'd be working with.
The brief was clear: build a web-based admin for office schedulers, a mobile app for field technicians on both iOS and Android, and wire it all into SIMPRO's API so the existing business data remained the single source of truth — no double entry, no sync issues.

This wasn't a simple CRUD app. Job scheduling with multi-day spans, weekend skipping, drag-and-drop reassignment, supervisor approvals, RFID equipment tracking, and real-time SIMPRO sync demanded an architecture that could handle genuine operational complexity — without becoming unmaintainable.
.png)
Every job, cost centre, and staff record flows from SIMPRO's API. The admin and mobile app read and write back to SIMPRO in real-time — no data duplication, no manual reconciliation.
Office managers schedule multi-day jobs by dragging them onto a weekly or monthly calendar. The system automatically skips weekends, handles staff conflicts, and lets supervisors be assigned per job.
Technicians see their schedule, job scope, tools and materials, team members, and can clock in/out — all from a React Native app that works on both iOS and Android with offline resilience.
Staff clock time against a job, allocate hours across cost centres, and submit for supervisor approval — all within the app. No paper timesheets, no manual data entry back into SIMPRO.
Workshops with the Rope Access team to map every scheduling workflow, timesheet rule, and equipment tracking process. Defined the SIMPRO API integration points and designed the monorepo architecture.
Built the web-based admin with drag-and-drop job scheduling, multi-day assignments with weekend skipping, and real-time staff availability. Integrated the SIMPRO API for live job and cost centre data.
React Native app for iOS and Android — job views, timesheet clock-in/out, equipment sign-in via RFID, purchase order creation, and team member visibility. All synced in real-time with the admin.
Timesheet approval workflows with supervisor sign-off, cost centre hour allocation, purchase order management, and the RFID-based gear tracking system. Full integration testing against SIMPRO.
Cross-browser testing, mobile device QA, user acceptance testing with the Rope Access team, SSL setup, and production deployment via Docker. App Store and Google Play submissions.
NPM workspaces with separate packages for API, Admin, and Worker — clean separation of concerns with shared dependencies across the entire stack.
Type-safe database access with auto-generated migrations, schema-driven development, and a powerful query engine that eliminated raw SQL entirely.
Deep integration with SIMPRO's REST API for real-time job data, cost centres, staff records, and purchase orders — the single source of truth for operations.
Full containerised orchestration for API, Admin, and Worker services. One command to spin up the entire stack locally or deploy to production.
A single codebase powering both Apple and Android apps — giving field technicians real-time job views, timesheets, and equipment tracking from their pockets.
End-to-end type safety from the database schema through the API to the admin frontend and mobile app. Zero ambiguity, fewer bugs.

“Our scheduling used to take hours of back-and-forth on spreadsheets. Now the office drags a job onto the calendar and every technician sees it instantly on their phone. It’s completely transformed how we operate.”
Rope Access Technicians now run their entire scheduling, timesheet, and equipment management workflow through a single integrated system. Office staff schedule via the web admin, field technicians manage their day from the mobile app, and every data point syncs back to SIMPRO automatically. Paper timesheets are gone. Scheduling conflicts are caught in real-time. And the team has full visibility into who is where, doing what, with which equipment.