OpenAIExpo2025/12/04 14:30

How MTA uses Expo to keep New York City moving

要点だけを先に読めるように短く再構成したセクションです。

元記事

Quick Digest

要約

要点だけを先に読めるように短く再構成したセクションです。

openaijamodel: gpt-5-mini-2025-08-07

MTAがExpoでNYCの交通を支える方法

Key Points

  • OTAで90秒以内に修正
  • EASでCI/CDと署名管理
  • 小規模チームで350K+対応

Summary

MTAのデジタルサービスチーム(約20名)は、Expoを核に2つのモバイルアプリ(TrainTime と 新しい Subway & Bus)を運用し、350K+のデイリー利用者に対して高い可用性を保っています。主な理由はOTA(EAS Update)での迅速なホットフィックスと、EAS Buildを用いた安定したビルド/署名フローです。重要フローの障害は90秒以内に検知・修正できる体制を持ち、App Storeの遅延に依存しない運用を実現しています。

Key Points

  • アーキテクチャ

    • Expoをデフォルト採用:React Nativeとの相性とOTAの強みが決め手。
    • 2つの公開アプリをExpoで運用(TrainTimeは既存、Subway & Busは2026Q1にExpoで再構築予定)。
  • 実運用パターン

    • EAS Update:チケット購入や経路検索等、コアフローのホットフィックス専用。
    • EAS Build:CI/CDの基盤。3週間ごとのプロダクションビルドで署名や通知キー管理を簡素化。
    • Release: Build → Deploy → Beta/Production。コアフローは手動QA(自動ビジュアルテストは不採用)。
  • ライブラリと観点

    • Expoライブラリを優先採用(expo-location, expo-image, expo-calendar, Expo for Sentry)。
    • 重大障害は最初のユーザー報告から90秒以内にOTAで修正可能にする運用と監視が鍵。
  • 将来検討

    • EAS Workflowsでリリースパイプライン改善、HostingでAPI Routesホスティングを試験予定。

Practical takeaways for engineers

  • OTAをホットフィックスの安全弁として設計する(重要フローの高速デプロイ手順を定義)。
  • EAS Buildでコード署名や通知設定をCIに組み込み、週単位または数週単位の安定したリリースサイクルを持つ。
  • Expoの公式ライブラリを優先し、外部ネイティブ依存を減らして小規模チームでの運用コストを下げる。
  • 監視とアラートでコアフロー障害を即検知し、OTAでのロールアウト手順をドライランしておく。

Full Translation

翻訳

原文の流れを保ったまま読める翻訳セクションです。

openaijamodel: gpt-5-mini-2025-08-07

MTAがExpoを使ってニューヨーク市の移動を支える方法

Users • React Native • Development • December 4, 2025 • 6 minutes read • Dan Kelly

概要

MTAはExpoを活用して、迅速なOTAアップデート、信頼できるビルド、少数精鋭のチームで2つの主要な交通アプリを運用し、350K+のデイリーユーザーに対応しています。アプリが止まると地下鉄では混乱が起き、車掌がチケットを確認できなかったり、乗客が移動計画を立てられなかったりします。ソフトウェアが交通システムの玄関口である以上、人々を待たせるわけにはいきません。だからこそ、ExpoによるOver-the-Air (OTA) 更新がMTAのモバイル戦略の基盤になっています。

MTAモバイルチームについて

MTAのデジタルサービスチームは20名規模で、世界最大級の交通機関の中でスタートアップのように機能しています。担当は次の通りです:

  • 駅構内のリアルタイム表示
  • 2つのパブリック向けモバイルアプリ(両方ともExpoで構築)
  • 公共向けウェブサイト
  • Radarのような社内向けの便利なツール

モバイルエンジニアリングチームは、24時間365日完璧に機能することが期待される350Kのデイリーアクティブユーザーを支えるには小規模です。チーム構成は以下のとおりです:

  • エンジニア 15名(バックエンド/フロントエンド含む)
  • PM 2名
  • データスペシャリスト 1名
  • デザイナー 1名

2つのExpoアプリ

デジタルサービスチームはExpoで2つの異なるアプリを作っています。一つは市内のバスと地下鉄利用者向け、もう一つは市外へ向かう利用者向けです。両アプリともApp StoreとPlay Storeに公開されています。

  • TrainTime: Metro-NorthとLong Island Rail Roadの利用者向け。特定の列車の乗車計画、チケット購入、車掌への表示などが可能。2022年にExpoで構築され、200K件以上のレビューで4.9-starの高評価を誇ります。
  • MTA Subway & Bus App: 現在App Storeにあるバージョンは既存チームが引き継いだものでExpo製ではありません。しかし、2026年Q1にローンチ予定の新バージョンはExpoで構築されます。地下鉄・バス利用者向けの体験を全面的に見直したもので、チームは新しいExpo版を公開することを非常に楽しみにしています。

なぜMTAがExpoを選んだか

デジタルサービスチームのリーダーであるWill Fisherは、Expoとの付き合いが2017年頃の初期React Native時代にまで遡ります。当時、ExpoのOTA更新機能が(彼の見解では)Expoを使う主な理由であり、現在でもその点が最大の利点だと言います。

モバイル開発を始めるにあたり、彼らは代替案を検討しませんでした。完全なネイティブ開発は選択肢になり得ませんでした。少人数のチームでiOSとAndroidのコードベースを別々に保守することは速度を著しく落とします。React Nativeは必要なカバレッジを提供し、Expoのツール群が導入を容易にしました。Flutterは真剣に検討されませんでした—React Nativeのエコシステムがより成熟しており、Expoのツール群が決め手になったからです。エンジニアの人数を増やさずにビジネスの要求を満たせる点も大きなメリットでした。

何より重要だったのは、本番で致命的なバグが発生した際に「数分で」修正できることです。Willは次のように述べています:

ExpoはOTAを実現するための明白なプラットフォームです。どのプレイヤーを選ぶか悩む余地はありませんでした。ExpoはOTAのためのプレイヤーです。

reactnative.devにアクセスすれば、ExpoがReact Nativeアプリ構築のデフォルトプラットフォームとして扱われていることがわかります。MTAチームはそのデフォルトに非常に満足しており、Expoチームのツールとサービスは洗練されていて信頼に足ると評価しています。過去5年以上にわたり、ExpoはMTAから大きな信頼を得てきました。

MTAがExpoを使う方法

現在、MTAは主に3つの方法でExpoを利用しています:

  • EAS Update:経路検索やチケット購入といったコアフローのホットフィックスに限定して使用。重大な障害が発生した際に迅速に修正できるため、Willや経営陣の安心につながっています。
  • EAS Build:CI/CDのバックボーン。3週間ごとにプロダクションビルドを生成します。コード署名やプッシュ通知キーの設定などの複雑さを大幅に軽減してくれる点が好評です。
  • Expoライブラリ:必要なライブラリが存在する場合、まずはExpoのライブラリを採用します。主に依存しているライブラリは以下の通りです:
    • expo-location
    • expo-image
    • expo-calendar
    • expo-sentry

リリースプロセス

リリースプロセスはシンプルです:

Build → Deploy → Beta/Production

コアフローに関しては手動QAを行っています(自動のビジュアルテストは彼らのニーズには脆弱すぎるため使っていません)。

重大なバグが発生した場合、最初のユーザー報告から90秒以内に問題を特定し、パッチを当ててOTAでデプロイできます。これによりNYCでの混乱を抑えられています。

Expoで構築することの影響

交通システムの一部であるアプリは、ダウンタイムが発生すると即座に影響が出ます。コアフローが壊れると、90秒以内に現場スタッフや乗客から報告が入ります。OTAアップデートにより、彼らはその混乱が広がる前に問題を解決できます。この方針により、App Storeの審査による遅延を待たずに重大なバグからのリカバリが可能になりました。

今後の予定

2026年Q1に、新しいSubway & BusアプリをExpoでローンチする予定です。これにより、最も多くの利用者を抱えるアプリにも上記の利点がもたらされます。ローンチ後は、より高速なイテレーション、容易なオンボーディング、システム全体での一貫性向上が期待されています。

Willの言葉を借りれば、"OTA updates are a safety net we can't operate without" — 彼らにとってOTAは創業時から変わらない価値であり、Expoがそれを最も優れた形で提供しています。将来的には、リリースパイプラインのアップグレードにWorkflowsを、API RoutesのホスティングにHostingを試験的に導入する予定です。

募集

もしMTAでこれら2つのExpoアプリに携わりたいなら朗報です。現在バックエンドエンジニアとUXデザイナーを募集しています!