Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
出前館を支えるJavaとKotlin
Search
株式会社出前館
March 27, 2025
Technology
0
530
出前館を支えるJavaとKotlin
出前館 x ウェルスナビ Tech Talk発表資料
株式会社出前館
March 27, 2025
Tweet
Share
More Decks by 株式会社出前館
See All by 株式会社出前館
出前館アプリ進化論 アーキテクチャと組織のリアルな変⾰の舞台裏
demaecan
0
480
Flutterにしてよかった?出前館アプリを2年運用して気づいたことを全部話します
demaecan
1
870
Boxを“使われる場”にする統制と自動化の仕組み
demaecan
1
360
生成AI導入における「短期ROIを超えた」共存戦略
demaecan
0
78
Okta Identity Governanceで実現する最小権限の原則
demaecan
1
400
incident_commander_demaecan__1_.pdf
demaecan
0
320
ClickHouse Cloud をオブザーバビリティ基盤の候補に選んだ理由
demaecan
0
110
出前館の“裏エース!?”─TPM(Tech PM)が現場に安心をデリバリー!
demaecan
0
520
SpringBoot x TestContainerで実現するポータブル自動結合テスト
demaecan
0
360
Other Decks in Technology
See All in Technology
Bill One急成長の舞台裏 開発組織が直面した失敗と教訓
sansantech
PRO
2
410
We Built for Predictability; The Workloads Didn’t Care
stahnma
0
150
10Xにおける品質保証活動の全体像と改善 #no_more_wait_for_test
nihonbuson
PRO
2
340
Embedded SREの終わりを設計する 「なんとなく」から計画的な自立支援へ
sansantech
PRO
3
2.6k
Cloud Runでコロプラが挑む 生成AI×ゲーム『神魔狩りのツクヨミ』の裏側
colopl
0
150
(技術的には)社内システムもOKなブラウザエージェントを作ってみた!
har1101
0
350
日本の85%が使う公共SaaSは、どう育ったのか
taketakekaho
1
250
~Everything as Codeを諦めない~ 後からCDK
mu7889yoon
3
530
生成AIを活用した音声文字起こしシステムの2つの構築パターンについて
miu_crescent
PRO
3
230
Bedrock PolicyでAmazon Bedrock Guardrails利用を強制してみた
yuu551
0
260
Tebiki Engineering Team Deck
tebiki
0
24k
Kiro IDEのドキュメントを全部読んだので地味だけどちょっと嬉しい機能を紹介する
khmoryz
0
210
Featured
See All Featured
Taking LLMs out of the black box: A practical guide to human-in-the-loop distillation
inesmontani
PRO
3
2k
Joys of Absence: A Defence of Solitary Play
codingconduct
1
290
Designing for humans not robots
tammielis
254
26k
From Legacy to Launchpad: Building Startup-Ready Communities
dugsong
0
140
The agentic SEO stack - context over prompts
schlessera
0
650
BBQ
matthewcrist
89
10k
How to Ace a Technical Interview
jacobian
281
24k
Why Mistakes Are the Best Teachers: Turning Failure into a Pathway for Growth
auna
0
57
Documentation Writing (for coders)
carmenintech
77
5.3k
The Impact of AI in SEO - AI Overviews June 2024 Edition
aleyda
5
740
Build The Right Thing And Hit Your Dates
maggiecrowley
39
3k
Agile that works and the tools we love
rasmusluckow
331
21k
Transcript
出前館を支えるJavaとKotlin 出前館 x ウェルスナビ Tech Talk 2025-03-27 株式会社出前館 加藤成晃
1. 自己紹介 2. 出前館のシステムについて 3. JavaとKotlinの活用 2 目次 出前館 x
ウェルスナビ Tech Talk
• 名前: 加藤成晃 (Kato Naruaki) • GitHub: ykyki • 経歴:
4年前まで数学基礎論をやっていた修士 • 出前館歴: 2024年8月に入社。半年ちょっと。開発と運用やってます • Java歴: 新卒研修で触り始めてから4年 • Kotlin歴: 業務で本格に書き始めてから1ヶ月 3 自己紹介 出前館 x ウェルスナビ Tech Talk
4 出前館について 出前館 x ウェルスナビ Tech Talk https://corporate.demae-can.co.jp/business/demaecan.html クイックコマースと呼ばれる領域 ここのシステムの話をします↓
• トラフィックが大きい(2025年第1四半期: オーダー数 1489万件、アクティブユーザー数 521万人)*1 • 遅延なく情報を連携させる必要がある(→アラート鳴ったらすぐ対応) • 複数の対向システムがあり、規模や品質が多種多様である •
高いSLAが求められる(去年のシステム障害時にはネットニュースになってしまった…) 5 システムの特徴・特性 出前館 x ウェルスナビ Tech Talk *1: 2025年8月期第1四半期決算説明会資料
6 システムの構成要素 出前館 x ウェルスナビ Tech Talk AWS Verda オンプレ
ECS / Kubernetes Oracle / MySQL Java Kotlin Kafka 言語 各種基盤 プラットフォーム 自分のチームで使っている 主要要素をピックアップ ← ここの話
• 複数のマイクロサービスで構成されている • 出前館のバックエンドの多くはJavaで書かれている • 去年開始されたクイックマートのバックエンドの多くはKotlinで書かれている • コアドメイン、HTTP通信、gRPC通信、メッセージ送受信、 DB接続などの処理を行っている 7
JavaとKotlin @ 出前館 出前館 x ウェルスナビ Tech Talk
• 経緯: 出前館サービス開始が2000年であり、古いJava資産が一部継承されている • 制約: Kafkaを活用しており、安定したKafkaクライアントが必要。Javaが第一候補(他だとGoとか.NETとか?) • Kotlinはモダンな言語で、かつそれら資産を流用できる 8 どうしてJavaとKotlin?
出前館 x ウェルスナビ Tech Talk
• 出前館とクイックマートのシステムはJavaとKotlinによって支えられています • JavaとKotlinを活用することで、システムの要件の実現に努めています • 新しい領域の開発では、Kotlinを積極的に使っています! 9 まとめ 出前館 x
ウェルスナビ Tech Talk