Back to projects
Data case study
Transit Rewards
A commuter platform that ingests public-transport schedules, handles real-time disruption alerts, calculates rewards, and supports a vendor marketplace.
Architecture map
GTFS ingestion, live alerts, rewards, and marketplace flow
Client experienceService boundaryData workflow
Challenge
Majorly extend an existing transit and rewards architecture while preserving agency-aware data and preventing duplicate alerts or rewards.
Solution
Refactored GTFS ingestion, built the real-time disruption worker, delivered the newer vendor marketplace, and extended commuter and reward workflows.
Architecture
Scheduled workers discover, download, normalize, and upsert GTFS data; real-time protobuf feeds drive deduplicated targeting, persistence, push delivery, and disruption rewards.
Contribution highlights
The engineering work behind the product.
- Extended and refactored GTFS ingestion with Mobility Database discovery, Brampton Transit, multi-agency normalization, upserts, and import reporting.
- Built the GTFS-Realtime alert worker with feed decoding, route matching, commuter targeting, deduplication, persistence, push delivery, and disruption rewards.
- Built vendor branches, offers, menu items, wallets, QR redemption, expiry automation, histories, PDF output, and analytics.
- Extended commuter agency, location, demographics, booking, frequent-location, and notification lifecycle workflows.
- Expanded rewards with tier eligibility, multipliers, distance configuration, currency conversion, dashboards, and supporting portal UI.
Implementation stack
Technologies grouped by responsibility.
Frontend
ReactCharting and analytics
Backend/CMS
Node.jsExpress.jsnode-cron
Data
MongoDBMongooseGTFSGTFS-Realtime/protobufMobility Database
Integrations
Firebase Admin/FCMBrampton Transit feedsGoogle MapsQR generationjsPDFReact PDF
Related work