How MTA uses Expo to keep New York City moving
Key Points
- OTA fixes in under 90 seconds
- EAS Build as CI/CD backbone
- Subway & Bus app on Expo in Q1 2026
Summary
MTA’s 20-person digital services team uses Expo to power two public apps serving ~350k daily users. Expo provides fast OTA updates (their safety net), EAS Build as a CI/CD backbone, and curated libraries that reduce platform complexity so a lean team can reliably support critical transit flows.
Key Points
- Team: 20 people (15 engineers, 2 PMs, 1 data specialist, 1 designer) supporting realtime signage, two Expo apps, website, and internal tools.
- Apps: TrainTime (Expo, 4.9★, Metro‑North & LIRR) and a new Subway & Bus app being rebuilt on Expo for Q1 2026.
- OTA hotfixes: EAS Update reserved for critical flows (trip planning, ticket purchase). They can identify, patch, and deploy an OTA fix in under 90 seconds.
- CI/CD: EAS Build produces production builds every ~3 weeks and simplifies code signing, push keys, and build orchestration.
- Libraries: default to Expo libraries (expo-location, expo-image, expo-calendar) and Expo integrations (e.g., Sentry).
- Release process: Build → Deploy → Beta / Production with manual QA for core flows (no brittle visual tests).
- Future: experimenting with Workflows and Hosting; hiring backend engineer and UX designer.
Practical recommendations for engineers
- Treat OTA updates as a primary safety net for mission‑critical flows and codify a hotfix runbook.
- Use EAS Build to centralize build/signing complexity and keep a predictable release cadence.
- Standardize on maintained Expo libraries where available to reduce platform-specific work.
- Instrument production monitoring so teams can detect regressions quickly and validate OTA patches fast.
- Keep manual QA for core user journeys if visual tests are too brittle, but automate fast smoke checks where possible.