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
DMMプラットフォームにおけるコード品質を改善する取り組みの理想と現実
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
pospome
November 21, 2023
Programming
3k
3
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
DMMプラットフォームにおけるコード品質を改善する取り組みの理想と現実
"コード品質向上のいろは - 先達に学ぶ実践例 Lunch LT" の資料です。
https://findy.connpass.com/event/300912/
pospome
November 21, 2023
More Decks by pospome
See All by pospome
生成AIを利用するだけでなく、投資できる組織へ
pospome
2
660
スタートアップを支える技術戦略と組織づくり
pospome
8
21k
技術好きなエンジニアが "リーダーへの進化" によって得たものと失ったもの
pospome
5
1.7k
DMMプラットフォームにおけるTiDBの導入から運用まで
pospome
8
5.3k
DMMプラットフォームがTiDB Cloudを採用した背景
pospome
10
6.3k
DDDはなぜ難しいのか / 良いコードの定義と設計能力の壁
pospome
44
23k
マイクロサービス環境におけるDB戦略 in DMMプラットフォーム
pospome
12
5.3k
組織全体で開発生産性に取り組むために 専門チームを作った話
pospome
2
2.2k
DMMプラットフォームにおける GKE を利用した プラットフォームエンジニアリングへの 取り組み
pospome
1
980
Other Decks in Programming
See All in Programming
初心者DevRelとして参加者だった私が、DevRel Talks!#2に登壇するまでにしてきたこと
sokohirai
0
160
Claude Code全社展開のためにやったことn選~プラグイン302個・コミッター271人を支えるために~
kenchan
5
1.8k
高専キャリア LT 発表内容
crysta1221
5
4.5k
レビュー履歴をAIに食わせて、 Compose移行を加速するs
shihochan
0
240
片田舎のおっさん、 Swift Buildのダイアモンド問題解決の不具合修正PRを出すが、解決方法がキャッシュをしないようにすることであり、ビルド時間が伸びると言われてマージされないので高速化もする/swiftbuild
yimajo
0
320
AIに既存システムを理解させる技術 ~レガシーを見捨てないハーネスエンジニアリング入門~
ochtum
0
170
「人を評価する AI」の設計と実装
ryoyanara
0
260
freee が目指す データ マネジメント戦略 AI-Ready 時代を支える 攻めのガバナンスとは
freee
PRO
0
530
仕様書を書く前にハーネスを作る - Agent Native開発は「探索を速く、判定を固く」
gotalab555
5
1.8k
Press start. Python's next generation.
willingc
PRO
3
260
VibeCodingからAgenticWorkflowへ
starfish719
0
940
思考垂れ流し開発 ~音声入力 × AIエージェント × 開発ハーネスによる試行錯誤~
npostring
0
430
Featured
See All Featured
How To Speak Unicorn (iThemes Webinar)
marktimemedia
1
560
Agile that works and the tools we love
rasmusluckow
331
22k
Site-Speed That Sticks
csswizardry
13
1.5k
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
Accessibility Awareness
sabderemane
1
180
Embracing the Ebb and Flow
colly
88
5.1k
From Legacy to Launchpad: Building Startup-Ready Communities
dugsong
0
310
Code Review Best Practice
trishagee
74
20k
HTML-Aware ERB: The Path to Reactive Rendering @ RubyCon 2026, Rimini, Italy
marcoroth
4
500
Designing for humans not robots
tammielis
254
26k
Balancing Empowerment & Direction
lara
6
1.3k
Applied NLP in the Age of Generative AI
inesmontani
PRO
4
2.4k
Transcript
DMMプラットフォームにおける コード品質を改善する取り組み 理想と現実 @pospome
登壇者 名前:pospome(ぽすぽめ) 所属:DMMプラットフォーム Twitter:@pospome
今回の発表内容について DMMプラットフォーム x コード品質向上 x 理想と現実
DMMプラットフォームについて 扱う領域:DMM会員、決済、DMMポイント、不正対策など エンジニア数:120名以上 開発チーム数:16チーム マイクロサービス数:約40サービス ピーク時のリクエスト:19,000RPS
レガシーシステムのリプレイスプロジェクト • DMMプラットフォーム内のレガシーシステムをリプレイスする。 • コード品質を高く保つ体制が必要になる。
pospomeの持論 コード品質を高く保つには以下の要素が必要である。 1. 定期的なリファクタリング 2. 静的解析 3. 設計スキルの高いエンジニア←これが重要
レビューシステムの導入 • 各チームのコードを設計スキルの高いエンジニアがレビューする。 擬似的に「強いエンジニアがいる環境」を作った。 • 自チームの数人が業務時間を割いて取り組んだ。 • 正直な話、結構成功させる自信があった。
レビューシステムの導入
そんなことはなかった・・・ チームによって様々な課題を抱えていた。 • リファクタリング時間の確保が難しい。 • コードの良し悪しを精度高く判断できる人がいない。 • テストコードを書いていない & カバレッジ可視化してない。
• マネージャーやテックリードがコード品質に対するリテラシーを持っていな い。
Developer Productivity Teamの設立 • 専門のチームを設立 コード品質に対して組織的に取り組んでいく
Developer Productivity Teamの取り組み • レビューシステムによるコードレビューは継続 ◦ 問題のあるコードを記録 ◦ 解消率によってリファクタリング時間の確保を可視化 •
Sonar Cloudの導入 ◦ テストカバレッジの可視化 ◦ 問題のあるコードの可視化(静的解析) • モノレポの導入 ◦ コードを一元管理
Developer Productivity Teamの取り組み • 各チームのコード品質を可視化し、比較できるようにする。 ◦ 各チームのマネージャーやTLに危機感を持ってもらう。 ◦ 各チームに介入する妥当性を保証できる。
まとめ • 大きな組織になるほどコード品質に向き合うのは難しくなる。 • 組織的に戦略を立てて取り組む必要がある。 ◦ 組織としてコード品質に投資する意思決定が必要になる。
おわり