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
Pythonによるイベントソーシングへの挑戦と現状に対する考察 / Challenging Event Sourcing with Python and Reflections on the Current State
nrslib
3
860
Remix × Cloudflare Pages × Sentry 奮闘記 / remix-pages-sentry
nkzn
1
360
AWS CDKを用いたセキュアなCI/CDパイプラインの構築 / Build a secure CI/CD pipeline using AWS CDK
seike460
PRO
3
500
Subclassing, Composition, Python, and You
hynek
3
100
M5Stackボードの選び方
tanakamasayuki
0
200
sqlcを利用してsqlに型付けを
kamiyam
0
220
Taking LLMs out of the black box: A practical guide to human-in-the-loop distillation
inesmontani
PRO
3
1.1k
pytest プラグインを開発して DRY に自動テストを書こう
inuatsu
2
240
GitHub Copilot Workspace で我々のアプリ開発がどう変わるのか?
shuyakinjo
0
840
Kotlin Multiplatform at Stable and Beyond (Kotlin Vienna, October 2024)
zsmb
2
320
タイミーにおけるデータの利用シーンと データ基盤の挑戦
marufeuille
4
3.1k
クラウドサービスの 利用コストを削減する技術 - 円安の真南風を感じて -
pyama86
3
230
Featured
See All Featured
The MySQL Ecosystem @ GitHub 2015
samlambert
250
12k
Automating Front-end Workflow
addyosmani
1365
200k
A Tale of Four Properties
chriscoyier
155
22k
Scaling GitHub
holman
458
140k
Building a Modern Day E-commerce SEO Strategy
aleyda
37
6.8k
Navigating Team Friction
lara
183
14k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
105
48k
Why Our Code Smells
bkeepers
PRO
334
57k
The Art of Programming - Codeland 2020
erikaheidi
50
13k
Building Flexible Design Systems
yeseniaperezcruz
327
38k
Building an army of robots
kneath
302
42k
Reflections from 52 weeks, 52 projects
jeffersonlam
346
20k
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 おわり