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
コロプラゲームバックエンド共通基盤 運用・開発体制の紹介
Search
COLOPL Inc.
September 27, 2023
Technology
0
1.7k
コロプラゲームバックエンド共通基盤 運用・開発体制の紹介
COLOPL Inc.
September 27, 2023
Tweet
Share
More Decks by COLOPL Inc.
See All by COLOPL Inc.
実務で動くAIエージェントを作ろう!MCP×Mastraをライブコーディングで実践
colopl
0
39
Cloud Runでコロプラが挑む 生成AI×ゲーム『神魔狩りのツクヨミ』の裏側
colopl
0
810
PHPStan をできる限り高速化してみる
colopl
0
750
コロプラ最新作インフラ構成について
colopl
0
280
Cloud Spanner 導入で実現した快適な開発と運用について
colopl
1
2.2k
コロプラのオンボーディングを採用から語りたい
colopl
7
2.6k
怖くない!ゼロから始めるPHPソースコードコンパイル入門
colopl
1
780
大規模トラフィックを支える ゲームバックエンドの課題と構成の変遷 ~安定したゲーム体験を実現するために~
colopl
3
8k
長期運用プロジェクトでのMySQLからTiDB移行の検証
colopl
3
1.9k
Other Decks in Technology
See All in Technology
PMBOK第8版は第7版から何が変わったのか(PMBOK第8版概要解説) / 20260304 Takeshi Watarai
shift_evolve
PRO
0
200
元エンジニアPdM、IDEが恋しすぎてCursorに全業務を集約したら、スライド作成まで爆速になった話
doiko123
1
580
GitLab Duo Agent Platform + Local LLMサービングで幸せになりたい
jyoshise
0
280
聲の形にみるアクセシビリティ
tomokusaba
0
170
Ultra Ethernet (UEC) v1.0 仕様概説
markunet
3
250
[JAWS DAYS 2026]私の AWS DevOps Agent 推しポイント
furuton
0
140
楽しく学ぼう!コミュニティ入門 AWSと人が つむいできたストーリー
hiroramos4
PRO
1
190
Claude Code Skills 勉強会 (DevelersIO向けに調整済み) / claude code skills for devio
masahirokawahara
1
14k
Security Diaries of an Open Source IAM
ahus1
0
210
Claude Codeが爆速進化してプラグイン追従がつらいので半自動化した話 ver.2
rfdnxbro
0
490
「Blue Team Labs Online」入門 - みんなで挑むログ解析バトル
v_avenger
0
150
2026-03-11 JAWS-UG 茨城 #12 改めてALBを便利に使う
masasuzu
2
340
Featured
See All Featured
Digital Ethics as a Driver of Design Innovation
axbom
PRO
1
210
BBQ
matthewcrist
89
10k
Marketing Yourself as an Engineer | Alaka | Gurzu
gurzu
0
150
Measuring Dark Social's Impact On Conversion and Attribution
stephenakadiri
1
150
Optimizing for Happiness
mojombo
378
71k
Practical Orchestrator
shlominoach
191
11k
Mind Mapping
helmedeiros
PRO
1
110
Designing for Timeless Needs
cassininazir
0
160
The Invisible Side of Design
smashingmag
302
51k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
32
2.8k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
2.4k
The AI Revolution Will Not Be Monopolized: How open-source beats economies of scale, even for LLMs
inesmontani
PRO
3
3.1k
Transcript
コロプラゲームバックエンド 共通基盤 運用・開発体制の紹介 松野岳記
2 • 略歴 ◦ SIerで出張生活 ◦ Web系 ◦ 2018 コロプラ入社
▪ 白猫プロジェクトSREチーム ▪ ドラゴンクエストウォーク SREチーム ▪ サーバー基盤マネジャー兼SRE 氏名 : 部署名 : 松野 岳記 技術基盤本部 第3バックエンドエンジニア部 サーバー基盤グループ 自己紹介
目次 1. コロプラバックエンド組織体制の紹介 2. 社内共通基盤ライブラリ開発活動の紹介 3
コロプラバックエンド組織体制の紹介 4
5 バックエンド組織の構成 ゲームサーバー開発チーム ゲームサーバー開発チーム インフラグループ : : ゲームサーバー開発チーム 共通基盤組織 ゲームタイトル
サーバー基盤グループ ※枠の大きさは実際の組織と関係ありません🙇
6 ゲームの共通基盤組織の役割? • ゲームってユニークでありたいものなのでは? • コロプラのVision → "新しい体験" を届ける •
共通基盤組織のやるべきことは? ??
7 ゲームの共通基盤組織の役割 • ゲームってユニークでありたいものなのでは? • コロプラのVision → "新しい体験" を届ける •
ゲームタイトルは常に新しい体験に挑戦 • 共通基盤はゲーム開発の土台 ◦ 性能面や運用ナレッジの会社としての蓄積 ▪ 成功の再現性 ▪ 技術の開拓
8 サーバー基盤グループの構成 ゲームサーバー開発チーム ゲームサーバー開発チーム インフラグループ : : ゲームサーバー開発チーム 共通基盤組織 ゲームタイトル
サーバー基盤グループ ※枠の大きさは実際の組織と関係ありません🙇
9 サーバー基盤グループの構成 ゲームサーバー開発チーム ゲームサーバー開発チーム インフラグループ : : ゲームサーバー開発チーム 共通基盤組織 ゲームタイトル
※枠の大きさは実際の組織と関係ありません🙇 LCEチーム SREチーム PEチーム RTPEチーム 【運用サイド】 普通にはなかなか経験できない運用ケースの知識 • LCE (Launch Coordination Engineer) ◦ ローンチ関連の性能とプロセスの品質 • SRE (Site Reliability Engineer) ◦ 長期運用の性能とプロセスの品質
10 サーバー基盤グループの構成 ゲームサーバー開発チーム ゲームサーバー開発チーム インフラグループ : : ゲームサーバー開発チーム 共通基盤組織 ゲームタイトル
※枠の大きさは実際の組織と関係ありません🙇 LCEチーム SREチーム PEチーム RTPEチーム 【開発サイド】 • PE (Platform Engineer) ◦ APIサーバーを中心とした開発技術のリード • RTPE (Real-Time Platform Engineer) ◦ リアルタイムサーバーを中心とした開発技術のリード
11 開発組織体制のイメージ PE・RTPE LCE・SRE ゲームエンジニア 社内基盤ライブラリ ゲームサーバー クラウド・オープン技術
社内共通基盤ライブラリ開発活動の紹介 12
13 PEチーム • Platform Engineer チーム ◦ 主にコロプラAPIサーバー開発の土台を支えています • 主な活動領域
◦ Google Cloudやミドルウェアの新機能の検証と追従 ◦ サーバーコンテナのエンハンス・チューニング ◦ サーバーフレームワークのエンハンス ◦ サーバー開発用CIなどの環境整備
14 PEチーム • Platform Engineer チーム ◦ 主にコロプラAPIサーバー開発の土台を支えています • 主な活動領域
◦ Google Cloudやミドルウェアの新機能の検証と追従 ◦ サーバーコンテナのエンハンス・チューニング ◦ サーバーフレームワークのエンハンス ◦ サーバー開発用CIなどの環境整備 今回はここの紹介をします
15 APIサーバーの社内基盤ライブラリ • 開発言語 / フレームワーク ◦ PHP / Laravel
• ライブラリ (一部) ◦ laravel-extension ◦ laravel-skeleton ◦ laravel-spanner
16 laravel-extension • 役割 ◦ ゲームサーバーとして低レイヤーを効果的に利用するための拡張 • 性質 ◦ 低レイヤーを効果的に使うプラクティスの実装
▪ 外部コンポーネント利用時のハンドリング ▪ データアクセスコードの自動生成 ▪ etc. ◦ ベース技術へのアンテナが必要
17 laravel-skeleton • 役割 ◦ どのゲームでも必要になる機能のテンプレート実装 • 性質 ◦ 共通機能の実装
▪ ユーザー認証 ▪ 課金処理 ▪ 運用サポートツール画面 ◦ ゲームタイトル運用の共通ナレッジの蓄積
18 laravel-spanner • 役割 ◦ Google 公式の PHP 用 Cloud
Spanner SDK を Laravel の DB Manger フレームワークとして利用するアダプタ • 性質 ◦ Google の Cloud Spanner 利用のガイダンスを吸収して Laravel のモデルで取り扱えるように提供 ◦ Cloud Spanner と SDK の更新に追従 ◦ OSSとして公開運用 ▪ https://github.com/colopl/laravel-spanner
19 PE とゲームエンジニアとのコミュニケーション • コア開発チームがあることの懸念 ◦ 本番ユースケースを知らずに技術の押し付けになりたくない ◦ 技術に触れる機会の不平等 ▪
ゲームタイトル側アサインでもベース技術と関わりたい (関わって欲しい) ◦ 物量 ▪ やること多い • 社内オープン開発 ◦ 共通 Git でゲームエンジニアからも Issue や Merge Request を常時受付 ◦ PE 側で発行した Issue に対しても実装希望者を受付
20 PE の OSS 活動 • コロプラ一部ライブラリのOSS公開 ◦ 前述の colopl/laravel-spanner
など • 利用しているOSSへのフィードバックや提案 ◦ PHP, Laravel, Google Cloud の SDK を中心になんでも ◦ RFC 提案やバグ修正などのコントリビュート ◦ 次バージョンの RFC や PR へのコメント ◦ +1 凸 リード
21 開発フィードバックサイクルのイメージ PE・RTPE LCE・SRE ゲームエンジニア 社内基盤ライブラリ クラウド・オープン技術 ゲームサーバー laravel-skeleton
laravel-extension laravel-spanner ベース提供 ゲーム実装 ユースケース Issue報告 修正MR 研究・検証 コード公開 提案・修正 ベストプラクティス実装
22 ここまでのまとめ • コロプラバックエンドの基盤開発をメインタスクにしている PE というエンジニアがいます • PE はベース技術に対して他に先んじてアンテナを張り APIサーバーの課題解決に取り組んでいます
• PE を中心にベース技術やゲームタイトルから得られたナレッジを 共通基盤ライブラリとして会社の資産にしています • コロプラではゲームタイトルのエンジニアでも 共通基盤ライブラリ開発が開かれています • RTPEの紹介もいつかできれば
Thank you 23