Python Engineer for Public Bus Network

Job ID: 40173291

Budget: $250 – $750 USD

We are looking for an experienced Python backend engineer to build a real-time engine for a public bus pilot project, with potential to scale to a full city network. The engine must:

- Collect GPS positions from buses continuously
- Clean and project these positions onto GTFS routes (shapes)
- Calculate real average speed and ETA for each stop
- Generate a single GTFS-Realtime feed (TripUpdates + VehiclePositions)
- Publish this feed via a stable HTTP URL for OpenTripPlanner (OTP) and Google Maps
- Update the feed every 3–10 seconds
- Automatically detect and correct GPS anomalies to prevent incorrect ETA displays

**Technical requirements / technologies:**

- **Python backend development**, experience in real-time data processing
- **Redis**: in-memory database for storing real-time bus states (position, speed, ETA, status)
- **PostgreSQL**: optional but recommended for storing historical data for analysis and statistics
- **GTFS / GTFS-Realtime / OpenTripPlanner** experience
- **Geolocation / GPS data processing**
- **API frameworks**: FastAPI or Flask
- Ability to handle scalability from **10 buses (pilot) → 100+ buses → multiple lines/cities**
- Knowledge of scheduling / timers for high-frequency updates

**Deliverables:**

- Fully working real-time engine with GTFS-Realtime feed
- Documentation for setup and scaling
- Optional: example of historical data integration for analytics


Please provide references or examples of similar projects you have completed. Only experienced engineers with relevant skills should apply.