Back to Projects
Field Operations Platform
Rock County Sealcoat
2026
Rock County Sealcoat Operations Platform
End-to-end field operations platform for a sealcoating contractor (Janesville, WI), covering job intake through live customer tracking. The system syncs jobs from Bitumio CRM, extracts scheduling constraints with OpenAI, runs a weather-aware auto-scheduling engine, orchestrates SMS/email customer lifecycle messaging, tracks crew trucks via Linxup GPS with traffic-aware ETAs, and exposes both an admin ops console and a tokenized public tracking portal—bridging office planning and on-the-ground execution in one stack.
Key Features
- Admin authentication with JWT access/refresh, bcrypt password hashing, and route-protected dashboard
- Bitumio CRM sync (GraphQL) with Redis token caching and completion write-back queues
- AI constraint extraction from free-text job notes (date constraints, deposits) via OpenAI
- Job queue management with filters, pagination, deposits, force-schedule, splits, coat overrides, and constraint review
- Multi-step weather-aware scheduling engine (capacity, school districts, route optimization, chase mode, approve/lock)
- Special-job workflows: striping follow-ups, warranty repairs, subcontracted paving/patching
- Customer confirmation tracking with follow-ups, escalation, manual confirm, and decline backfill
- Lifecycle messaging (SMS/email): confirmations, morning dispatch, day-before notices, lot reopen, review requests
- Inbound Twilio SMS and SendGrid email webhooks with signature verification and confirmation parsing
- Message Center for inbound/outbound history, unread counts, and status tracking
- Linxup GPS pipeline: webhooks, Pull API staleness fallback, geofencing, truck state machine, job completion
- Live admin fleet map and public customer tracking portal with Socket.IO and Google Maps
- Traffic-aware ETA pipeline (Google Routes API) with Redis caching, circuit breaker, and Haversine cost guardrails
- Retell AI phone agent integration: call logs, transcripts, audio playback, opportunity sync to Bitumio
- Weather forecasts (Open-Meteo), auto day exclusion, and weather-cancel with reschedule flows
- Analytics dashboard, audit log, app settings, subcontractor management, and schedule PDF export
Technical Architecture
- Modular NestJS monolith with feature modules (auth, Bitumio, scheduling, messaging, GPS, tracking, phone-agent, weather, routing)
- Service-layer domain logic with event-driven fan-out (@nestjs/event-emitter)
- BullMQ background workers for messaging, CRM sync/write-back, and webhook processing
- REST API (/api/v1) + dual Socket.IO namespaces (/gps, /admin/gps)
- Frontend: component-based App Router UI, domain React Query hooks, dual Axios clients (admin JWT vs public portal), React Context auth
- GPS truck state machine → job completion → messaging + Bitumio write-back pipeline
- Composable scheduling pipeline (day selection → mode → capacity → school → route → time windows)
Highlights
This project demonstrates full-stack product engineering for a real field-service business: syncing external CRM data, applying AI to unstructured notes, optimizing daily schedules under weather and capacity constraints, coordinating customers over SMS/email, and closing the loop with live GPS, geofencing, and traffic-aware ETAs.
The architecture combines a modular NestJS backend, Redis/BullMQ async processing, event-driven workflows, and a Next.js ops console plus public tracking portal—backed by substantial automated test coverage around the highest-risk scheduling and messaging domains.