Lock in $30 Savings on PRO—Offer Ends Soon! ⏳
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
出前館アプリ進化論 アーキテクチャと組織のリアルな変⾰の舞台裏
Search
株式会社出前館
November 21, 2025
Technology
0
35
出前館アプリ進化論 アーキテクチャと組織のリアルな変⾰の舞台裏
株式会社出前館
November 21, 2025
Tweet
Share
More Decks by 株式会社出前館
See All by 株式会社出前館
Flutterにしてよかった?出前館アプリを2年運用して気づいたことを全部話します
demaecan
0
480
Boxを“使われる場”にする統制と自動化の仕組み
demaecan
0
270
生成AI導入における「短期ROIを超えた」共存戦略
demaecan
0
51
Okta Identity Governanceで実現する最小権限の原則
demaecan
0
300
incident_commander_demaecan__1_.pdf
demaecan
0
260
ClickHouse Cloud をオブザーバビリティ基盤の候補に選んだ理由
demaecan
0
97
出前館の“裏エース!?”─TPM(Tech PM)が現場に安心をデリバリー!
demaecan
0
430
SpringBoot x TestContainerで実現するポータブル自動結合テスト
demaecan
0
310
これならできる!Kotlin・Spring・DDDを活用したAll in oneのマイクロサービス開発術
demaecan
2
1k
Other Decks in Technology
See All in Technology
Introduction to Bill One Development Engineer
sansan33
PRO
0
320
小規模チームによる衛星管制システムの開発とスケーラビリティの実現
sankichi92
0
180
AI駆動開発によるDDDの実践
dip_tech
PRO
0
190
mablでリグレッションテストをデイリー実行するまで #mablExperience
bengo4com
0
450
TypeScript×CASLでつくるSaaSの認可 / Authz with CASL
saka2jp
2
170
【保存版】「ガチャ」からの脱却:Gemini × Veoで作る、意図を反映するAI動画制作ワークフロー
nekoailab
0
120
翻訳・対話・越境で強いチームワークを作ろう! / Building Strong Teamwork through Interpretation, Dialogue, and Border-Crossing
ar_tama
4
1.1k
OpenShiftのBGPサポート - MetalLB+FRR-k8s編
orimanabu
0
130
段階的に進める、 挫折しない自宅サーバ入門
yu_kod
5
2.1k
オープンデータの内製化から分かったGISデータを巡る行政の課題
naokim84
2
1.3k
意外と難しいドメイン駆動設計の話
zozotech
PRO
0
840
Databricksによるエージェント構築
taka_aki
1
100
Featured
See All Featured
XXLCSS - How to scale CSS and keep your sanity
sugarenia
249
1.3M
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
140
34k
4 Signs Your Business is Dying
shpigford
186
22k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
The Language of Interfaces
destraynor
162
25k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
285
14k
The Power of CSS Pseudo Elements
geoffreycrofte
80
6.1k
Making the Leap to Tech Lead
cromwellryan
135
9.6k
Unsuck your backbone
ammeep
671
58k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
690
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
3.2k
Facilitating Awesome Meetings
lara
57
6.6k
Transcript
© Demae-can Co., Ltd. 植松 啓誠 2025.11.21 株式会社出前館 プロダクト本部コンシューマー部アプリ開発グループ 出前館アプリ進化論
アーキテクチャと組織のリアルな変⾰の舞台裏
© Demae-can Co., Ltd. Agenda 01 ⾃⼰紹介 02 ⽼舗サービスの歴史と変⾰の背景 03
変⾰フェーズⅠ: 各コンポーネントでの課題把握と改善 04 変⾰フェーズⅡ: リアーキテクチャ 05 次の10年に向けて 2
© Demae-can Co., Ltd. ⾃⼰紹介 3
© Demae-can Co., Ltd. ⾃⼰紹介 • 所属 • LINEヤフー株式会社 京都開発室
• 株式会社出前館 出向 • これまでの業務経験 • ~2021年 Web Frontend (React/Vue/BFF) • 2021年~ 出前館に参画 (React Native, Flutter) • その他 • JBA公認C級コーチライセンス 🏀 • 2児のパパ 植松 啓誠 株式会社出前館 プロダクト本部コンシューマ部 アプリ開発グループ 4
© Demae-can Co., Ltd. ⽼舗サービスの歴史と変⾰の背景 5
© Demae-can Co., Ltd. ⽼舗サービスの歴史と変⾰の背景 出前館のご紹介 MISSION テクノロジーで時間価値を⾼める VISION 地域の⼈々の幸せをつなぐライフインフラ
VALUE ホスピタリティ チャレンジ クリエイティビティ 6
© Demae-can Co., Ltd. ⽼舗サービスの歴史と変⾰の背景 サービス全体像 7
© Demae-can Co., Ltd. ⽼舗サービスの歴史と変⾰の背景 サービス全体像 8
© Demae-can Co., Ltd. ⽼舗サービスの歴史と変⾰の背景 サービス全体像 9
© Demae-can Co., Ltd. ⽼舗サービスの歴史と変⾰の背景 サービス全体像 10
© Demae-can Co., Ltd. ⽼舗サービスの歴史と変⾰の背景 サービス全体像 11
© Demae-can Co., Ltd. ⽼舗サービスの歴史と変⾰の背景 サービス全体像 12
© Demae-can Co., Ltd. ⽼舗サービスの歴史と変⾰の背景 出前館はいつからサービスを開始? A. 1990年 B. 2000年
C. 2010年 D. 2020年 13
© Demae-can Co., Ltd. ⽼舗サービスの歴史と変⾰の背景 出前館はいつからサービスを開始? B. 2000年 1999年創業 2000年サービス開始
14
© Demae-can Co., Ltd. ⽼舗サービスの歴史と変⾰の背景 25年続くサービス 15
© Demae-can Co., Ltd. ⽼舗サービスの歴史と変⾰の背景 積み重なった課題がいっぱい 16
© Demae-can Co., Ltd. ⽼舗サービスの歴史と変⾰の背景 https://corporate.demae-can.co.jp/pr/news/demaecan/line.html 変⾰の契機 • 2020年3⽉ LINEグループと資本業務提携
• LINEのエンジニアが参画 17
© Demae-can Co., Ltd. ⽼舗サービスの歴史と変⾰の背景 https://corporate.demae-can.co.jp/pr/news/demaecan/line.html 変⾰の契機 • 2020年3⽉ LINEグループと資本業務提携
• LINEのエンジニアが参画 18 20年運⽤が続く巨⼤サービスをこの5年でどう変⾰したか
© Demae-can Co., Ltd. 変⾰フェーズⅠ: 各コンポーネントでの課題把握と改善 19
© Demae-can Co., Ltd. 変⾰フェーズⅠ: 各コンポーネントでの課題把握と改善 新型コロナウイルスの影響によりシェアリングデリバリー®の 取扱⾼が昨年対⽐4倍に! https://corporate.demae-can.co.jp/pr/news/demaecan/_4.html “事業成⻑を⽌めずに”
技術基盤を刷新する 20
© Demae-can Co., Ltd. 変⾰フェーズⅠ: 各コンポーネントでの課題把握と改善 “事業成⻑を⽌めずに” 技術基盤を刷新する 21
© Demae-can Co., Ltd. 変⾰フェーズⅠ: 各コンポーネントでの課題把握と改善 “事業成⻑を⽌めずに” 技術基盤を刷新する • まずはサービス理解・業務理解・システム理解
• 各コンポーネントでそれぞれの課題に向き合う インフラ バックエンド Web Frontend アプリ 22
© Demae-can Co., Ltd. 変⾰フェーズⅠ: 各コンポーネントでの課題把握と改善 各コンポーネントの課題 • オンプレミス中⼼で運⽤ •
システムの⼤半がオンプレ上で稼働 • データセンターの物理限界でスケールが困難 • サービス特性に合わせたインフラ構成でない • フードデリバリーは昼⾷・⼣⾷にピーク • ピークに合わせたリソース • 運⽤の属⼈化 • 知識・オペレーションの属⼈化 インフラ 23
© Demae-can Co., Ltd. 変⾰フェーズⅠ: 各コンポーネントでの課題把握と改善 各コンポーネントの課題 • オンプレミス中⼼で運⽤ •
システムの⼤半がオンプレ上で稼働 • データセンターの物理限界でスケールが困難 • サービス特性に合わせたインフラ構成でない • フードデリバリーは昼⾷・⼣⾷にピーク • ピークに合わせたリソース • 運⽤の属⼈化 • 知識・オペレーションの属⼈化 インフラ クラウド移⾏⽅針 24
© Demae-can Co., Ltd. 変⾰フェーズⅠ: 各コンポーネントでの課題把握と改善 各コンポーネントの課題 バックエンド • サポートが終了したフレームワーク
• セキュリティ上の懸念 • モノリシックな構造で責務が混在 • 結合度が⾼く、多くの機能ドメインが絡み合う • 開発速度や品質に⼤きな影響 • ⼀つの巨⼤なデータベース • アーキテクチャの中⼼に巨⼤な共有データベース • 800を超えるテーブルが存在 • 単⼀障害点に 25
© Demae-can Co., Ltd. 変⾰フェーズⅠ: 各コンポーネントでの課題把握と改善 各コンポーネントの課題 バックエンド • サポートが終了したフレームワーク
• セキュリティ上の懸念 • モノリシックな構造で責務が混在 • 結合度が⾼く、多くの機能ドメインが絡み合う • 開発速度や品質に⼤きな影響 • ⼀つの巨⼤なデータベース • アーキテクチャの中⼼に巨⼤な共有データベース • 800を超えるテーブルが存在 • 単⼀障害点に 責務の切り分け・Microservices 26
© Demae-can Co., Ltd. 変⾰フェーズⅠ: 各コンポーネントでの課題把握と改善 各コンポーネントの課題 • Controllerの肥⼤化 •
巨⼤な1ファイルにロジックが集約 • 7000⾏以上 • 多くのDead Code • 多くのビジネスロジックがclientに点在 • アプリ・Webでコピペロジックが多数点在 • 保守性・ロジックの⼀貫性に課題 • 既存の技術に関する知識・リソース不⾜ • PHPのエンジニア不⾜ Web Frontend 27
© Demae-can Co., Ltd. 変⾰フェーズⅠ: 各コンポーネントでの課題把握と改善 各コンポーネントの課題 • Controllerの肥⼤化 •
巨⼤な1ファイルにロジックが集約 • 7000⾏以上 • 多くのDead Code • 多くのビジネスロジックがclientに点在 • アプリ・Webでコピペロジックが多数点在 • 保守性・ロジックの⼀貫性に課題 • 既存の技術に関する知識・リソース不⾜ • PHPのエンジニア不⾜ Web Frontend Web Server全体をフルリプレイス 28
© Demae-can Co., Ltd. 変⾰フェーズⅠ: 各コンポーネントでの課題把握と改善 各コンポーネントの課題 アプリ • 開発体制・プロセス
• アウトソース中⼼の開発 • コード管理 • 属⼈化 • コード品質 • Clientによったビジネスロジック • ビジネスロジックの重複・分散 • テストがない 29
© Demae-can Co., Ltd. 変⾰フェーズⅠ: 各コンポーネントでの課題把握と改善 各コンポーネントの課題 アプリ • 開発体制・プロセス
• アウトソース中⼼の開発 • コード管理 • 属⼈化 • コード品質 • Clientによったビジネスロジック • ビジネスロジックの重複・分散 • テストがない ドキュメント整備・コツコツ改修 30
© Demae-can Co., Ltd. 変⾰フェーズⅠ: 各コンポーネントでの課題把握と改善 各コンポーネントの課題 アプリ • 開発体制・プロセス
• アウトソース中⼼の開発 • コード管理 • 属⼈化 • コード品質 • Clientによったビジネスロジック • ビジネスロジックの重複・分散 • テストがない ドキュメント整備・コツコツ改修 31 当時のGithubのlabel
© Demae-can Co., Ltd. 変⾰フェーズⅠ: 各コンポーネントでの課題把握と改善 各コンポーネントの課題 ⽼舗ITサービスのモダナイズに取り組みはじめたLINEエンジニアたちの挑戦! 出前館の改善について和⽥卓⼈さんが聞いた (2021.02.10)
https://hatenanews.com/articles/2021/02/10/103000 出前館アプリ開発における体制変化に伴う取り組み React Nativeを活⽤した継続開発のためのルール作成 (2021.12.15) https://logmi.jp/brandtopics/325608 32
© Demae-can Co., Ltd. 変⾰フェーズⅠ: 各コンポーネントでの課題把握と改善 変⾰フェーズⅠ: 各コンポーネントでの課題把握と改善 33
© Demae-can Co., Ltd. 変⾰フェーズⅠ: 各コンポーネントでの課題把握と改善 変⾰フェーズⅠ: 各コンポーネントでの課題把握と改善 • サービスの理解とシステム全体像の理解
• それぞれのチームで仕様/設計のドキュメント化 • ナレッジの蓄積・共有 34
© Demae-can Co., Ltd. 変⾰フェーズⅠ: 各コンポーネントでの課題把握と改善 変⾰フェーズⅠ: 各コンポーネントでの課題把握と改善 • サービスの理解とシステム全体像の理解
• それぞれのチームで仕様/設計のドキュメント化 • ナレッジの蓄積・共有 • 次の段階に向けて愚直に改善 • リファクタリング • 責務分離 • 分散しているコードの共通化 • ライブラリ、フレームワークのアップデート • 環境の移⾏ • APIのinterface変更への対応 35
© Demae-can Co., Ltd. 変⾰フェーズⅠ: 各コンポーネントでの課題把握と改善 変⾰フェーズⅠ: 各コンポーネントでの課題把握と改善 • サービスの理解とシステム全体像の理解
• それぞれのチームで仕様/設計のドキュメント化 • ナレッジの蓄積・共有 • 次の段階に向けて愚直に改善 • リファクタリング • 責務分離 • 分散しているコードの共通化 • ライブラリ、フレームワークのアップデート • 環境の移⾏ • APIのinterface変更への対応 変⾰フェーズⅠ: まずは変⾰のために各コンポーネントで課題把握と改善 36
© Demae-can Co., Ltd. 変⾰フェーズⅡ: リアーキテクチャ 37
© Demae-can Co., Ltd. 変⾰フェーズⅡ: リアーキテクチャ 当初(2021年ごろ)のアプリ⽬線の超概略アーキテクチャ App 38
© Demae-can Co., Ltd. 変⾰フェーズⅡ: リアーキテクチャ 当初(2021年ごろ)のアプリ⽬線の超概略アーキテクチャ DB でっかいAPI Server
でっかい DB REST 店舗・商品 注⽂・決済 クーポン 会員情報 広告 … App 39
© Demae-can Co., Ltd. 変⾰フェーズⅡ: リアーキテクチャ 当初(2021年ごろ)のアプリ⽬線の超概略アーキテクチャ DB でっかいAPI Server
でっかい DB API for app Cache Web REST REST 店舗・商品 注⽂・決済 クーポン 会員情報 広告 … REST Web Server App 40
© Demae-can Co., Ltd. 変⾰フェーズⅡ: リアーキテクチャ 当初(2021年ごろ)のアプリ⽬線の超概略アーキテクチャ DB でっかいAPI Server
でっかい DB API for app Cache Web REST REST 店舗・商品 注⽂・決済 クーポン 会員情報 広告 … REST • 運⽤が複雑 • コミュニケーションパス • 多段cacheなどで仕様が不明確 Web Server アプリ⽬線 App 41
© Demae-can Co., Ltd. 変⾰フェーズⅡ: リアーキテクチャ 当初(2021年ごろ)のアプリ⽬線の超概略アーキテクチャ DB でっかいAPI Server
でっかい DB API for app Cache Web REST REST 店舗・商品 注⽂・決済 クーポン 会員情報 広告 … REST • 運⽤が複雑 • コミュニケーションパス • 多段cacheなどで仕様が不明確 Web Server アプリ⽬線 • ⼊り⼝が複数 • ログの分散 • 攻撃リスク • 運⽤負荷が⾼い • DBが⾼負荷でサービス全体に影響 • 責務の混在 • 様々な場所からDB書き込み サービス⽬線 App 42
© Demae-can Co., Ltd. 変⾰フェーズⅡ: リアーキテクチャ 現在(未来も含む)のアプリ⽬線の超概略アーキテクチャ BFF Microservices Web
GraphQ L gRPC 店舗・商品 注⽂・決済 クーポン 会員情報 広告 … • ⼊り⼝を⼀つに • ログの⼀元性 • 認証認可の整合性 • 運⽤負荷軽減 • 責務を明確に • 独⽴性 • スケール • データの所在 • ビジネスロジックがBFFに集約 • (ほぼ)JSON⾊付けがかりに専念 • GraphQLでApp/Webで 最適なデータ取得 アプリ⽬線 サービス⽬線 App 43
© Demae-can Co., Ltd. App 変⾰フェーズⅡ: リアーキテクチャ Webのリアーキテクチャ DB でっかいAPI
Server でっかい DB REST REST 店舗・商品 注⽂・決済 クーポン 会員情報 広告 … REST Web Server API for app Cache Web 44
© Demae-can Co., Ltd. 変⾰フェーズⅡ: リアーキテクチャ Webのリアーキテクチャ API for app
Cache Web BFF Web Apollo Server Next.js CodeIgniter BFF Web Next.js 45
© Demae-can Co., Ltd. 変⾰フェーズⅡ: リアーキテクチャ Webのリアーキテクチャ API for app
Cache Web CodeIgniter BFF Web Next.js 46
© Demae-can Co., Ltd. 変⾰フェーズⅡ: リアーキテクチャ Webのリアーキテクチャ API for app
Cache Web CodeIgniter BFF Web Next.js • 技術 • PHP -> Typescript • フルサーバーレンダリング -> Single Page Application 47
© Demae-can Co., Ltd. 変⾰フェーズⅡ: リアーキテクチャ Webのリアーキテクチャ API for app
Cache Web CodeIgniter BFF Web Next.js • 技術 • PHP -> Typescript • フルサーバーレンダリング -> Single Page Application • ⽬的 • メンテナンス性の向上 • エンジニアリソースの最適化 • BFFへのビジネスロジックの移⾏ 48
© Demae-can Co., Ltd. 変⾰フェーズⅡ: リアーキテクチャ Webのリアーキテクチャ API for app
Cache Web CodeIgniter BFF Web Next.js • 技術 • PHP -> Typescript • フルサーバーレンダリング -> Single Page Application • ⽬的 • メンテナンス性の向上 • エンジニアリソースの最適化 • BFFへのビジネスロジックの移⾏ • 移⾏ • 100以上の画⾯を移⾏ • 段階的にユーザーフローごとに切り替え • ClientのビジネスロジックをBFFへ • AppもWeb側の移⾏完了後にBFF経由へ移⾏ 49
© Demae-can Co., Ltd. 変⾰フェーズⅡ: リアーキテクチャ Webのリアーキテクチャ BFF Web Apollo
Server Next.js BFF(API Routes) Web Next.js 50
© Demae-can Co., Ltd. 変⾰フェーズⅡ: リアーキテクチャ Webのリアーキテクチャ • メンテナンス性 •
BFF/Webのコードの混在 • スケーラビリティ • 台数調整などが個別にできない • BFFはアプリからも参照されている • デプロイ/ロールバック時の切り離し • 両⽅同時にリリース/ロールバック BFF Web Apollo Server Next.js BFF(API Routes) Web Next.js 51
© Demae-can Co., Ltd. 変⾰フェーズⅡ: リアーキテクチャ Webのリアーキテクチャ BFF Web Apollo
Server Next.js • BFFの役割の変化 • As-is • Cacheの共有 • To-be • App/Webのビジネスロジックの共通化 • 各Microservicesのオーケストレーション • 後⽅互換性の吸収 • 認証・認可の集約 • 組織の変化 • BFF: Web Team => BFF Team 52
© Demae-can Co., Ltd. 変⾰フェーズⅡ: リアーキテクチャ Webのリアーキテクチャ API for app
Cache Web BFF Web Apollo Server Next.js CodeIgniter BFF Web Next.js 53 出前館Webリプレイスで直⾯した技術的課題と解決 (2023.04.25) https://engineering.linecorp.com/ja/blog/web-replace-demaecan
© Demae-can Co., Ltd. REST App Web Server API for
app Cache Web 変⾰フェーズⅡ: リアーキテクチャ バックエンドのリアーキテクチャ REST REST DB でっかいAPI Server でっかい DB 店舗・商品 注⽂・決済 クーポン 会員情報 広告 … 54
© Demae-can Co., Ltd. 変⾰フェーズⅡ: リアーキテクチャ バックエンドのリアーキテクチャ DB でっかいAPI Server
でっかい DB 店舗・商品 注⽂・決済 クーポン 会員情報 広告 … 店舗・商品 注⽂・決済 クーポン 会員情報 広告 … Microservices 55
© Demae-can Co., Ltd. 変⾰フェーズⅡ: リアーキテクチャ バックエンドのリアーキテクチャ Ph1. データとロジックのオーナーシップの確⽴ DB
でっかいAPI Server でっかい DB 店舗・商品 注⽂・決済 クーポン 会員情報 広告 … 56 Ph2. 独⾃DBへの移⾏
© Demae-can Co., Ltd. 変⾰フェーズⅡ: リアーキテクチャ バックエンドのリアーキテクチャ DB でっかいAPI Server
でっかい DB 店舗・商品 注⽂・決済 クーポン 会員情報 広告 クーポンDB 57 Ph1. データとロジックのオーナーシップの確⽴ • 800を越えるテーブルのオーナーシップ整理 • 新規マイクロサービス⽴ち上げ • データアクセス経路の切り替え
© Demae-can Co., Ltd. 変⾰フェーズⅡ: リアーキテクチャ バックエンドのリアーキテクチャ DB でっかいAPI Server
でっかい DB 店舗・商品 注⽂・決済 クーポン 会員情報 広告 Ph1. データとロジックのオーナーシップの確⽴ • 800を越えるテーブルのオーナーシップ整理 • 新規マイクロサービス⽴ち上げ • データアクセス経路の切り替え Ph2. 独⾃DBへの移⾏ クーポンDB • サービス間の結合を物理的に切る • スケール戦略がしやすい • APIのInterfaceさえ守れば破壊的な変更も可 58
© Demae-can Co., Ltd. 変⾰フェーズⅡ: リアーキテクチャ バックエンドのリアーキテクチャ DB でっかいAPI Server
でっかい DB 店舗・商品 注⽂・決済 クーポン 会員情報 広告 … 店舗・商品 注⽂・決済 クーポン 会員情報 広告 … Microservices 59
© Demae-can Co., Ltd. 変⾰フェーズⅡ: リアーキテクチャ バックエンドのリアーキテクチャ DB でっかいAPI Server
でっかい DB 店舗・商品 注⽂・決済 クーポン 会員情報 広告 … 店舗・商品 注⽂・決済 クーポン 会員情報 広告 … Micro Services ⼤規模レガシーシステムのマイクロサービス化における 0→1 ではない-1→1 の新規開発 https://techblog.demae- can.co.jp/entry/20250805/1754383768 60
© Demae-can Co., Ltd. 変⾰フェーズⅡ: リアーキテクチャ リアーキテクチャに伴うアプリ開発⽬線の変化 61
© Demae-can Co., Ltd. API for app Cache Web Web
Server 変⾰フェーズⅡ: リアーキテクチャ リアーキテクチャに伴うアプリ開発⽬線の変化 REST でっかいAPI Server 店舗・商品 注⽂・決済 クーポン 会員情報 広告 … App 62
© Demae-can Co., Ltd. API for app Cache Web Web
Server 変⾰フェーズⅡ: リアーキテクチャ リアーキテクチャに伴うアプリ開発⽬線の変化 REST でっかいAPI Server 店舗・商品 注⽂・決済 クーポン 会員情報 広告 … App 7 0 1 0 80以上のAPI • 多くのoverfetch/underfetch • Clientで重複したビジネスロジック 改修コストも⾼いしなんとかしたい 63
© Demae-can Co., Ltd. API for app Cache Web Web
Server 変⾰フェーズⅡ: リアーキテクチャ リアーキテクチャに伴うアプリ開発⽬線の変化 でっかいAPI Server 店舗・商品 注⽂・決済 クーポン 会員情報 広告 … App BFF • BFFに移⾏されたAPIから徐々に移⾏ • overfetch/underfetchも少しずつ解消 • Microservice化もBFF層で吸収だ! BFF誕⽣ 徐々に移⾏ 全てBFF経由に移管 64 GraphQL
© Demae-can Co., Ltd. API for app Cache Web Web
Server 変⾰フェーズⅡ: リアーキテクチャ リアーキテクチャに伴うアプリ開発⽬線の変化 でっかいAPI Server 店舗・商品 注⽂・決済 クーポン 会員情報 広告 App BFF Microservices • 極⼒BFFで吸収 • 責務の整理でinterfaceが変わる • 負債を残さない • V2, V3… 何を移⾏して何を移⾏してないんだ …? 65 GraphQL Microservices
© Demae-can Co., Ltd. 変⾰フェーズⅡ: リアーキテクチャ リアーキテクチャに伴うアプリ開発⽬線の変化 BFF Micro Services
GraphQ L gRPC 店舗・商品 注⽂・決済 クーポン 会員情報 広告 … App めでたしめでたし(まだ終わってない) 66
© Demae-can Co., Ltd. 変⾰フェーズⅡ: リアーキテクチャ リアーキテクチャに伴うアプリ開発⽬線の変化 BFF Micro Services
Web GraphQ L gRPC 店舗・商品 注⽂・決済 クーポン 会員情報 広告 … App 組織としてステークホルダーが明確に 67
© Demae-can Co., Ltd. 変⾰フェーズⅠ: 各コンポーネントでの課題把握と改善 変⾰フェーズⅡ: リアーキテクチャ 68
© Demae-can Co., Ltd. 変⾰フェーズⅠ: 各コンポーネントでの課題把握と改善 変⾰フェーズⅡ: リアーキテクチャ • プロダクト
• 変更に強い構造 • 改善サイクルの⾼速化 69
© Demae-can Co., Ltd. 変⾰フェーズⅠ: 各コンポーネントでの課題把握と改善 変⾰フェーズⅡ: リアーキテクチャ • プロダクト
• 変更に強い構造 • 改善サイクルの⾼速化 • 組織 • 責務とオーナーの明確化 • 意思決定と開発速度の向上 70
© Demae-can Co., Ltd. 変⾰フェーズⅠ: 各コンポーネントでの課題把握と改善 変⾰フェーズⅡ: リアーキテクチャ • プロダクト
• 変更に強い構造 • 改善サイクルの⾼速化 • 組織 • 責務とオーナーの明確化 • 意思決定と開発速度の向上 • 未来への基盤 • 継続的な改善が可能なサービスに進化 • “変化し続けられる” 体質 71
© Demae-can Co., Ltd. 変⾰フェーズⅠ: 各コンポーネントでの課題把握と改善 変⾰フェーズⅡ: リアーキテクチャ • プロダクト
• 変更に強い構造 • 改善サイクルの⾼速化 • 組織 • 責務とオーナーの明確化 • 意思決定と開発速度の向上 • 未来への基盤 • 継続的な改善が可能なサービスに進化 • “変化し続けられる” 体質 72 “事業成⻑を⽌めずに” 徐々に アーキテクチャを移⾏し、変化に強いアーキテクチャ
© Demae-can Co., Ltd. 変⾰フェーズⅡ: リアーキテクチャ 余談: アプリのリアーキテクチャ • ReactNative
-> Flutter へ移⾏ Ask the Speaker or 出前館ブース でお話ししましょう!! https://techblog.demae-can.co.jp/entry/20250826/1756184068 出前館の⼤変⾰:React NativeからFlutterへの⼤胆な移⾏戦略 73
© Demae-can Co., Ltd. 次の10年に向けて 74
© Demae-can Co., Ltd. 次の10年に向けて • 根幹 • ミッションの実現: テクノロジーで時間価値を⾼める
• ビジョンの実現: 地域の⼈々の幸せをつなぐライフインフラ 75
© Demae-can Co., Ltd. 次の10年に向けて • 根幹 • ミッションの実現: テクノロジーで時間価値を⾼める
• ビジョンの実現: 地域の⼈々の幸せをつなぐライフインフラ • 開発プロセス:より速く、より安定した開発 • いかにユーザーへ価値を素早く届けるか • 事業成⻑を⽌めずに回しるづけられるプロセス 76
© Demae-can Co., Ltd. 次の10年に向けて • 根幹 • ミッションの実現: テクノロジーで時間価値を⾼める
• ビジョンの実現: 地域の⼈々の幸せをつなぐライフインフラ • 開発プロセス:より速く、より安定した開発 • いかにユーザーへ価値を素早く届けるか • 事業成⻑を⽌めずに回しるづけられるプロセス • ドキュメントと経緯を残し続ける • ⼀番効いた負債が「なぜこうなっているかわからない」状態 • 仕様だけではなく意思決定の経緯も残す 77
© Demae-can Co., Ltd. 次の10年に向けて • 根幹 • ミッションの実現: テクノロジーで時間価値を⾼める
• ビジョンの実現: 地域の⼈々の幸せをつなぐライフインフラ • 開発プロセス:より速く、より安定した開発 • いかにユーザーへ価値を素早く届けるか • 事業成⻑を⽌めずに回しるづけられるプロセス • ドキュメントと経緯を残し続ける • ⼀番効いた負債が「なぜこうなっているかわからない」状態 • 仕様だけではなく意思決定の経緯も残す • 質の⾼いコードと、技術負債との付き合い⽅ • “ゼロ負債”ではなく、“コントロールされた負債”を⽬指す • 継続的に技術負債を減らす 78
© Demae-can Co., Ltd. 次の10年に向けて 25年間⽀えてくれているユーザーを裏切らない 79
© Demae-can Co., Ltd. 出前館のご紹介 宣伝: いま、出前館はお得に注⽂できるキャンペーン中です! 80
© Demae-can Co., Ltd. 出前館のご紹介 宣伝: いま、出前館はお得に注⽂できるキャンペーン中です! 81
© Demae-can Co., Ltd. 82 本⽇共有したlinkがまとまった notebooklm Fin