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
KazukiHayase
April 28, 2023
Technology
4
3.8k
生産性が上がり続けるチームを作るための第一歩
KazukiHayase
April 28, 2023
Tweet
Share
More Decks by KazukiHayase
See All by KazukiHayase
要件定義・デザインフェーズでもAIを活用して、コミュニケーションの密度を高める
kazukihayase
0
240
CIでのgolangci-lintの実行を約90%削減した話
kazukihayase
0
480
もし今からGraphQLを採用するなら
kazukihayase
13
5.4k
Goでテストをしやすくするためにやったこと
kazukihayase
1
840
GraphQLクライアントの技術選定 2023冬
kazukihayase
9
7.3k
Introduction and Insights of the Hasura-based Architecture
kazukihayase
0
1k
自分だけが頑張るのをやめて、フルスタックなチームを作る
kazukihayase
2
3.4k
Goでテンプレートからファイルを自動生成するCLIを作る
kazukihayase
0
1.4k
GraphQLにおけるクライアントキャッシュ戦略
kazukihayase
0
3.3k
Other Decks in Technology
See All in Technology
AI時代だからこそ考える、僕らが本当につくりたいスクラムチーム / A Scrum Team we really want to create in this AI era
takaking22
6
3.4k
LLM時代にデータエンジニアの役割はどう変わるか?
ikkimiyazaki
0
130
定期的な価値提供だけじゃない、スクラムが導くチームの共創化 / 20251004 Naoki Takahashi
shift_evolve
PRO
3
300
神回のメカニズムと再現方法/Mechanisms and Playbook for Kamikai scrumat2025
moriyuya
4
530
生成AIとM5Stack / M5 Japan Tour 2025 Autumn 東京
you
PRO
0
210
BirdCLEF+2025 Noir 5位解法紹介
myso
0
190
Goにおける 生成AIによるコード生成の ベンチマーク評価入門
daisuketakeda
2
100
多野優介
tanoyusuke
1
430
pprof vs runtime/trace (FlightRecorder)
task4233
0
170
10年の共創が示す、これからの開発者と企業の関係 ~ Crossroad
soracom
PRO
1
190
AI駆動開発を推進するためにサービス開発チームで 取り組んでいること
noayaoshiro
0
170
Where will it converge?
ibknadedeji
0
180
Featured
See All Featured
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
657
61k
Why Our Code Smells
bkeepers
PRO
339
57k
jQuery: Nuts, Bolts and Bling
dougneiner
64
7.9k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.4k
Code Review Best Practice
trishagee
72
19k
KATA
mclloyd
32
15k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
How to Think Like a Performance Engineer
csswizardry
27
2k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
23
1.5k
Scaling GitHub
holman
463
140k
Art, The Web, and Tiny UX
lynnandtonic
303
21k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
15
1.7k
Transcript
生産性が上がり続けるチームを作るための第一歩 【開発生産性 Meetup #1】開発生産性可視化による変化~事例LTから学ぶベストプラクティス~ 2023.04.26
自己紹介 名前:早瀬和輝 経歴:BuySell Technologiesに2021年に新卒入社 所属:開発2部 出品管理SaaSチーム 役職:フルスタックエンジニア、プロジェクトリーダー 趣味:開発、マンガ、アニメ、ベース、バスケ Twitter:@KazukiHayase
アジェンダ はじめに 01 過去の開発体制とチームの課題 02 立ち止まりと振り返り 03 振り返り後の開発生産性 04 まとめ
05
01 はじめに
None
出品管理チームに所属
チーム体制と開発生産性 合計 11 名のチームでスクラムで開発 EM (1名) PdM (1名) デザイナー (1名)
エンジニア (8名)
一人当たり1日平均3PR作成 コミットからマージまで平均12.2h
チームのベストプラクティス • PRの差分は60行以内に収める • PRのレビューはどんなに遅くても2時間以内に行う • スクラムイベント、PRのレビューは全員参加 • 全員フルスタックに開発
これらのベストプラクティスを実践し 生産性の高いチームになるために最初にやったこと 今日の話すこと 01
02 過去の開発体制とチームの課題
直近1年半の開発生産性の推移
直近1年半の開発生産性の推移 ここの話
当時の開発体制① BE 領域で担当者が別れており、自分は両方を担当 FE 業務委託
当時の課題① • フロントエンドの属人化 • BE・FE間のコミュニケーションコストが高い • タスクの依存関係により作業が進められない • FEのタスクを用意して指示する作業が必要
当時の開発体制② リソース効率重視で人にタスクをアサインしていた
当時の課題② かなり属人化していたので、詰まっても誰もヘルプに入れない
当時の課題② • 共通認識がないので実装もレビューもリードタイムが長くなる • 目先の実装を優先した結果、手戻りが頻発する • タスクが個人に委ねられているので進捗が見えづらい
03 立ち止まりと振り返り
立ち止まりと振り返り 前述した課題についてはチームメンバー各々が感じていた 一度立ち止まって、チームの課題と目的の整理を実施
チーム内で課題と目的を設定
話し合った結果 理想のチームの状態を実現するために、本格的にスクラムを導入 新しい取り組みに置ける、一時的な生産性の低下もチーム内で合意
取り組み始めの開発生産性 一時的に低下
04 振り返り後の開発生産性
振り返り後の開発生産性 • PRの差分は60行以内に収める • PRのレビューはどんなに遅くても2時間以内に行う • スクラムイベント、PRのレビューは全員参加 • 全員フルスタックに開発 改善を繰り返す中でベストプラクティスが生まれた
その他の取り組み 生産性指標を可視化してチームのワークフローを改善したら生産性が爆上がりした話 リファイメントとプランニングを改善することで、チームの属人化が解消された話
振り返り後の開発生産性 爆上がり
フロントエンドのタスク不足 • FEのテックリードとして新メンバーがjoin • 直近で優先度の高いFEのタスクが無くなった その後のチームの課題と解決策 異動前のチームとのギャップ • スクラム未採用のチームから新メンバーがjoin •
チームの開発の進め方に疑問を感じていた ◦ e.g. スプリントプランニングなどMtgが多い バックエンドをやってみよう! とりあえずやってみよう!
過去の経験を踏まえて 下記のような選択肢は採用しなかった • 単独でFEのタスクを進める • プランニングを省略する • 人にタスクをアサインする 過去の失敗経験から学んだ上での意思決定
直近の開発生産性 開発生産性は上がり続けている
全体の流れ なんちゃって スクラム 本格的に スクラム導入 + 生産性向上 新規メンバー 加入 さらなる
生産性向上 立ち止まり + 振り返り 生産性の低い状態に戻ることを防いだ
全体の流れ なんちゃって スクラム 本格的に スクラム導入 + 生産性向上 新規メンバー 加入 さらなる
生産性向上 立ち止まり + 振り返り ここで立ち止まり課題と目的の共通理解を 作ったからこそ生産性を上げ続けられている
05 まとめ
まとめ • 一度立ち止まることで、結果的に生産性の高いチームになれた • 最初に課題と目的を明確にして、共通の理解を持つことが重要 ◦ できればログを残して、いつでも立ち戻れるように