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
2.8k
生産性が上がり続けるチームを作るための第一歩
KazukiHayase
April 28, 2023
Tweet
Share
More Decks by KazukiHayase
See All by KazukiHayase
GraphQLクライアントの技術選定 2023冬
kazukihayase
8
4.4k
Introduction and Insights of the Hasura-based Architecture
kazukihayase
0
650
自分だけが頑張るのをやめて、フルスタックなチームを作る
kazukihayase
2
1.6k
Goでテンプレートからファイルを自動生成するCLIを作る
kazukihayase
0
230
GraphQLにおけるクライアントキャッシュ戦略
kazukihayase
0
1.9k
MUIをベースにしたデザインシステムの構築
kazukihayase
0
320
Hasuraを活用するためのTips集
kazukihayase
0
28k
ReactとGraphQLで実現する宣言的データフェッチ
kazukihayase
1
2.3k
Contaienr/Presentationalパターン再入門
kazukihayase
0
14k
Other Decks in Technology
See All in Technology
[2024年3月版] Databricksのシステムアーキテクチャ
databricksjapan
8
1.9k
社内勉強会運営のコツ
senoo
6
1.1k
Algyan イベント振り返り
linyixian
0
190
KubeCon EU 2024 Recap “Kubernetes Policy Time Machine: Where to Next?”
ryysud
0
120
Databricks におけるデータエンジニアリング
databricksjapan
0
380
Vertex AI を中心に 生成AIのアップデートを共有します
kaz1437
0
140
PHPカンファレンス小田原2024
ysknsid25
3
660
Data and AI Governance: Existing Challenges and Emerging Trends
scotthsieh825
0
160
Hands-on / Kaname Frusawa / Cloud Compare Users Meetup 2024 at University of Tokyo on April 17
paraworld
2
470
「手動オペレーションに定評がある」と言われた私が心がけていること / phpcon_odawara2024
blue_goheimochi
2
320
マルチアカウント環境への発見的統制の導入
ch1aki
1
1.3k
Tableau事例紹介 / Tableau Case Study of Eureka
kazuya_araki_tokyo
1
170
Featured
See All Featured
The Illustrated Children's Guide to Kubernetes
chrisshort
29
46k
A Philosophy of Restraint
colly
196
16k
Visualization
eitanlees
135
14k
A Tale of Four Properties
chriscoyier
150
22k
Testing 201, or: Great Expectations
jmmastey
27
6.3k
ParisWeb 2013: Learning to Love: Crash Course in Emotional UX Design
dotmariusz
104
6.6k
The World Runs on Bad Software
bkeepers
PRO
61
6.7k
Being A Developer After 40
akosma
56
580k
VelocityConf: Rendering Performance Case Studies
addyosmani
320
23k
Documentation Writing (for coders)
carmenintech
59
3.9k
How To Stay Up To Date on Web Technology
chriscoyier
782
250k
Fireside Chat
paigeccino
20
2.6k
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 まとめ
まとめ • 一度立ち止まることで、結果的に生産性の高いチームになれた • 最初に課題と目的を明確にして、共通の理解を持つことが重要 ◦ できればログを残して、いつでも立ち戻れるように