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
540
出前館を支えるJavaとKotlin
出前館 x ウェルスナビ Tech Talk発表資料
株式会社出前館
March 27, 2025
Tweet
Share
More Decks by 株式会社出前館
See All by 株式会社出前館
複雑にからみあう複数のシステムを要する出前館QAの実情、展望
demaecan
0
91
QA業務を変える(!?)AIを併用した不具合分析の実践
demaecan
0
100
出前館アプリの品質を支えるリリーストレインとその実践
demaecan
0
120
出前館アプリ進化論 アーキテクチャと組織のリアルな変⾰の舞台裏
demaecan
0
510
Flutterにしてよかった?出前館アプリを2年運用して気づいたことを全部話します
demaecan
1
950
Boxを“使われる場”にする統制と自動化の仕組み
demaecan
1
370
生成AI導入における「短期ROIを超えた」共存戦略
demaecan
0
90
Okta Identity Governanceで実現する最小権限の原則
demaecan
1
420
incident_commander_demaecan__1_.pdf
demaecan
0
340
Other Decks in Technology
See All in Technology
Kaggleの経験が実務にどう活きているか / kaggle_findy
sansan_randd
4
590
Introduction to Sansan Meishi Maker Development Engineer
sansan33
PRO
0
360
名刺メーカーDevグループ 紹介資料
sansan33
PRO
0
1.1k
技術的負債の泥沼から組織を救う3つの転換点
nwiizo
5
1.6k
Snowflake Night #2 LT
taromatsui_cccmkhd
0
320
AIエンジニア Devin と歩む、自律型運用プロセスの構築
a2ito
0
670
「ストレッチゾーンに挑戦し続ける」ことって難しくないですか? メンバーの持続的成長を支えるEMの環境設計
sansantech
PRO
1
280
Snowflakeデータ基盤で挑むAI活用 〜4年間のDataOpsの基礎をもとに〜
kaz3284
1
340
Security Diaries of an Open Source IAM
ahus1
0
200
Datadog Cloud Cost Management で実現するFinOps
taiponrock
PRO
0
140
入門DBSC
ynojima
0
130
Kiro のクレジットを使い切る!
otanikohei2023
0
110
Featured
See All Featured
Believing is Seeing
oripsolob
1
69
Exploring anti-patterns in Rails
aemeredith
2
280
Bootstrapping a Software Product
garrettdimon
PRO
307
120k
Testing 201, or: Great Expectations
jmmastey
46
8.1k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
31
3.1k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.7k
How Software Deployment tools have changed in the past 20 years
geshan
0
32k
The browser strikes back
jonoalderson
0
760
Fashionably flexible responsive web design (full day workshop)
malarkey
408
66k
Automating Front-end Workflow
addyosmani
1370
200k
Technical Leadership for Architectural Decision Making
baasie
3
270
Information Architects: The Missing Link in Design Systems
soysaucechin
0
810
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