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
jimpei
October 02, 2024
Programming
2
460
文化が生産性を作る
Engineering Productivity Meetup #3 in 福岡
https://cybozu.connpass.com/event/328524/
jimpei
October 02, 2024
Tweet
Share
More Decks by jimpei
See All by jimpei
「コードがむずかしい」からの脱却
jimpei
41
16k
Deployment Painをなくそう
jimpei
3
570
Other Decks in Programming
See All in Programming
2024-10-02 dev2next - Application Observability like you've never heard before
jonatan_ivanov
0
140
Modern Functional Fluent CFML REST by Luis Majano
ortus24
0
120
VS Code extension: ドラッグ&ドロップでファイルを並び替える
ttrace
0
140
ポケモンで考えるコミュニケーション / Communication Lessons from Pokémon
mackey0225
3
130
複数プロダクトの技術改善・クラウド移行に向き合うチームのフレキシブルなペア・モブプログラミングの実践 / Flexible Pair Programming And Mob Programming
honyanya
0
130
Flutterアプリを生成AIで生成する勘所
rizumita
0
240
Findy - エンジニア向け会社紹介 / Findy Letter for Engineers
findyinc
4
93k
Vue :: Better Testing 2024
up1
1
360
The Efficiency Paradox and How to Save Yourself and the World
hollycummins
0
130
Subclassing, Composition, Python, and You
hynek
3
100
Unlocking Python's Core Magic
leew
0
110
WEBアプリケーションにおけるAWS Lambdaを用いた大規模な非同期処理の実践
delhi09
PRO
7
3.6k
Featured
See All Featured
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
191
16k
Done Done
chrislema
181
16k
A better future with KSS
kneath
235
17k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
663
120k
Become a Pro
speakerdeck
PRO
24
4.9k
The Pragmatic Product Professional
lauravandoore
31
6.2k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
158
15k
VelocityConf: Rendering Performance Case Studies
addyosmani
324
23k
Build The Right Thing And Hit Your Dates
maggiecrowley
31
2.3k
Gamification - CAS2011
davidbonilla
80
5k
Practical Orchestrator
shlominoach
185
10k
10 Git Anti Patterns You Should be Aware of
lemiorhan
653
59k
Transcript
1 文化が生産性を作る 2024.10.02 Engineering Productivity Meetup #3 in 福岡 @jimpei
2 SIer -> Yahoo! JAPAN -> mercari (2021/08)
Software Engineer メルカリでお困りごとを解決するドメインでの プロダクトを開発してます 濱村 甚平(@jinpeih)
3 文化が生産性を作る
4 文化が生産性を作る • 物的生産性 / 付加価値生産性 • DORA / Four
Keys / SPACE 生産性には色々語るべきポイントが多い
5 文化が生産性を作る • 物的生産性 / 付加価値生産性 • DORA / Four
Keys / SPACE どれにフォーカスするにせよ、チームで改善や取り組みをしてますよね? 生産性には色々語るべきポイントが多い
6 本日の問い
7 本日の問い 『その改善や取り組みは どこまでチームで 合意できていますか?』
8 なぜ合意が気になったか
9 私達のチームは順調でした ・数値は目標ではなく健康診断のみに利用 ・健全であるという自負も持っていた デプロイ頻度 月30回, 年間400回 変更失敗率 1%未満 deploys
/ a day / a developer 0.4
10 なぜ合意が気になったか • デプロイ頻度:30/月, 400/年 • D/D/D: 0.4 • 事故はほぼ0
→ 計測してない 私達のチームは順調でした
11 チームに変革期が訪れる
12 BE BE FE FE FE FE PdM EM ~
2023/3
13 BE BE FE FE FE FE PdM EM BE
BE FE FE FE FE PdM EM BE (new) ~ 2023/3 2023/4 ~ 異動や退職
14 BE BE FE FE FE FE PdM EM BE
(new) 2023/4
15 BE BE FE FE FE FE PdM (new) EM
from FE BE (new) FE (new) BE BE FE FE FE FE PdM EM BE (new) 2023/4 2024/4 ~ Role Change
16 BE BE FE FE FE FE PdM (new) EM
from FE BE (new) FE (new) BE BE FE FE FE FE PdM EM BE (new) 育休(2ヶ月) 2023/4 2024/4 ~ Role Change
17 人がまるっと変わるとどうなる?
18 人がまるっと変わるとどうなる? • 生産性が下がってしまう のでは? • 仕組み化されているので大丈夫かも ? • 下がったとしても一時的ではないか?
懸念と楽観が入り交じる
19 人がまるっと変わるとどうなる? • 生産性が下がってしまう のでは? • 仕組み化されているので大丈夫かも ? • 下がったとしても一時的ではないか?
懸念と楽観が入り交じる 結果 問題なかった
20 なぜ合意が気になったか • デプロイ頻度:30/月, 400/年 • D/D/D: 0.4 • 事故はほぼ0
→ 計測してない 私達のチームは順調でした
21 生産性を支えた仕組み 統一されたマイクロサービスの開発フロー • FE, BE, 内部ツール, BFF(GraphQL),,,などいくつかのマイクロサービスがある
• 開発フロー ◦ masterから直接PRを作る ◦ PRでlabelをつけるとPR用の開発環境が作られる ◦ マージするとDEV環境に自動でデプロイされる ◦ release tagをつけるとInternal リリースされる ◦ 問題なければCanaryリリース&本番リリース • ログやモニタリングも同様のツール・仕組み ◦ 問題があったときに見るべきものがわかりやすい
22 生産性を支えた仕組み 裁量と責任を持った意思決定ができるチーム • PdMやステークホルダーと一体となっている ◦ 朝会にも毎日いる
◦ リリース頻度が高いので、朝会で都度デモ&フィードバックをもらう ◦ 細かい認識合わせと意思決定をこの場で決めることができる(大体
23 問題なかった = これからも問題は起きない? これ以上旧メンバーが 抜けるとまずそう... BE BE FE FE
FE FE PdM (new) EM from FE BE (new) FE (new)
24 問題なかった = これからも問題は起きない? これ以上旧メンバーが 抜けるとまずそう... BE BE FE FE
FE FE PdM (new) EM from FE BE (new) FE (new) 仕組みだけでなく ちゃんと文化にする 必要がある
25 大事にしたい価値観とは 例えば, 個人的には .. CI待ちは無駄な時間だよね 意思決定には説明責任あるよね 作ったものは自分で責任を持つ QAしやすくしたい 人力・属人化するものはなくしたい
価値のあるものを作るべきである PRはすぐレビューする PRとデプロイは小さく 仕事(チケット)のサイズを小さく
26 大事にしたい価値観とは 例えば, 個人的には .. CI待ちは無駄な時間だよね 意思決定には説明責任あるよね 作ったものは自分で責任を持つ QAしやすくしたい 人力・属人化するものはなくしたい
価値のあるものを作るべきである PRはすぐレビューする PRとデプロイは小さく 仕事(チケット)のサイズを小さく 聞くと、うんうん、となりますか? が、チームメンバーも全く同じ気持ちですか?
27 実は私たちのチームは暗黙的に合意していたことに気づいた 改善アクションも大事だが アクションが検討される合意が大事 • 日々のディスカッションで価値観はぎりぎり擦り合わさっていたと思う • さらにメンバーが入れ変わると暗黙的な価値観の合意は維持できない可能性が あると感じた
28 これからどうするか • チームでの開発について考え方や価値観などの同意を取る • 同意を作る過程と結果 で目線と意識 を可能な限り揃える ワーキングアグリーメントの作成
29 まとめ 開発生産性に対する取り組み、チームでしっかり合意できていますか? 暗黙的ではなく、ワーキングアグリーメント を作るのはいかがでしょうか?
30 おわり