The hardest part was the data architecture. Structured records like fleet profiles, driver data, and route history sit in MySQL. The high-frequency GPS event stream, which would choke a relational setup, runs through MongoDB instead. Vehicle positions render on a live map with latency low enough that movement feels real-time. That split is what kept the dashboard fast while thousands of GPS events landed every minute.