Upgrade to Pro — share decks privately, control downloads, hide ads and more …

初めてのモバイルアプリ内製化:Amplifyを用いたバックエンド開発の道のり

Sponsored · Your Podcast. Everywhere. Effortlessly. Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
Avatar for asaharak asaharak
January 27, 2026
70

 初めてのモバイルアプリ内製化:Amplifyを用いたバックエンド開発の道のり

2026年1月20日に開催された「AWS Amplify Conference 2026」での登壇資料です。
https://aws-amplify-jp.github.io/conference/2026/

Avatar for asaharak

asaharak

January 27, 2026
Tweet

Transcript

  1. 自己紹介 シチズン・システムズ ヘルスケア事業部 ヘルスケア開発部 浅原 一葉 2012年の入社以来、血圧計などの組み込みソフトウェア設計を担当。 2023年度よりモバイル向けアプリ「Health Scan」のスクラムチームにエンジニアと して参画。

    2 シチズン時計 経営企画部 DX推進室 ルドルフ ヨガ フタマ 2021年4月入社。時計部品や回路設計などのハードウェア関連の開発を担 当。23年度よりソフトウェア開発に転身。現在、モバイル向けアプリの 「Health Scan」のスクラムチームにエンジニアとして参画。
  2. サービス概要 「 あ な た の 健 康 」 と

    向 き 合 う 時 間 「 あな たの健康」 に 目を向けてみませ んか? 専 用 機 器 と H e a l t h S c a n ア プ リ を 連 携 す れ ば 測 定 デ ー タ を 自 動 で 記 録 。 健康の”今 ”が 記録でみえる 転 送 さ れ た 測 定 デ ー タ で 健 康 の ” 今 ” を 瞬 時 に 把 握 で き 、 数 値 の 維 持 や 改 善 と い っ た 「 こ れ か ら 」 に 向 け て の 判 断 材 料 に な り ま す 。 4
  3. これまでの道のり 7 2023 初めてのアプリ内製化に向け てスクラムチームが発足 アプリからバックエンドまで 全ての内製化する開発がス タート 2024〜 2024年4月に初回のアプリ

    (ver.1.1) 公開! 継続的なアップデートに向け た開発を継続中 今日の話のメインは2023年当時にGen1で開発した内容です 〜2022 外部委託アプリの保守運用に 課題、PoC開発を開始 もっと迅速に ユーザーへ価値を 届けたい!
  4. 11 開発効率化のための開発環境整備 開発の効率化に重点 を置くため、 CI/CDの構築を想定 しGitHub Enterprise を導入 アプリの素早いリリー スを実現するため

    クロスプラットフォー ム対応フレームワーク Flutterを採用 モバイル開発との親 和性、開発/管理コス ト削減のため AWSマネージドサー ビスのAmplify、 AppSync等を採用
  5. 初めてのアプリ開発! フロントエンドだけで 頭はパンク寸前 14 4 5 6 7 8 9

    10 11 12 1 2 3 4 フロントエンド開発 バックエンド 開発 非機能開発 アプリ公開 開発の流れ DynamoDB?Amplify? どれがどのサービスだっけ? 育成のためフロントエンドとバックエンドを分けて開発 覚える範囲が明確に分かれて いたから何とかついていけた 少し自信ついたかも!
  6. フロントエンドでの並行開発 15 シニアエンジニア ジュニアエンジニア 機能A 機能B 機能C 機能D 最大4チームで並行開発し、開発効率を維持 有識者

    + 初心者の組み合わせで開発チームを組みながら 開発することでチーム全体のスキルの底上げに寄与
  7. 17 Amplifyで複数環境追加 dev teamA amplify env add teamA amplify env

    checkout teamA ① ① • 新しいバックエンド環境をデプロイ • dev環境と同じ内容のバックエンド環境が自動作成 ② ② • 作成されたバックエンド環境に切り替える デプロイの失敗に不安…でも、調べれば意外と何とかなるな
  8. 18 バックエンド並行開発 dev チームA チームB チームC チームD teamA teamB teamC

    teamD サーバーレスなのでスケーリングを気にせず環境を追加! バックエンド開発でも4チーム並行開発を維持
  9. 4 5 6 7 8 9 10 11 12 1

    2 3 4 19 開発期間を1ヶ月短縮し、スコープ外だった ログイン機能を開発することに! 効果 4 5 6 7 8 9 10 11 12 1 2 3 4 フロントエンド開発 バックエンド 開発 非機能開発 アプリ公開 フロントエンド開発 バック エンド 開発 非機能開発 アプリ公開 ログイン機能 開発
  10. 3. Platformの設定 25 AndroidManifest.xmlにqueriesとintent-filterを追加 (※iOSは設定不要) <queries> ... <intent> <action android:name=

    "android.support.customtabs.action.CustomTabsService" /> </intent> ... </queries> <application ... <activity android:name=".MainActivity" <intent-filter> ... <intent-filter> <action android:name="android.intent.action.VIEW" /> <category android:name="android.intent.category.DEFAULT" /> <category android:name="android.intent.category.BROWSABLE" /> <data android:scheme="@string/bundle_id" /> </intent-filter> ... </activity>
  11. 4. WebUIサインインの実装 26 signInWithWebUIを実装し、ページで呼び出す処理を追加 Future<bool> signInWithWebUI(AuthProvider provider) async { try

    { await amplifyAuth.signInWithWebUI(provider: provider); } ... } return true; } class LoginPage extends HookConsumerWidget { const LoginPage(super.key); // ここでサインインボタンが押下されるとGoogle/Appleの認証 処理が呼び出される Future<(AppRoute, {Map<String, dynamic>? queryParameters})?> _signInWithWebUI( ) async { ... } // postSignInで完了画面を呼び出す return accountService.postSignIn(); }
  12. 29 1 スプリント 2 スプリント 3 スプリント 4 スプリント Google/Appleログイン

    その他ログインのカスタム機能 Amplifyの使用で実装工数は短縮できるのを実感 実装工数の比較 AWS Amplifyの機能を用いる場合、 実装期間全体の約1/4で完成 自前の実装が加わる場合、 実装期間全体の約3/4で完成 1ヶ月間