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
ふりかえりは僕らのチームの改善サイクル / kaizen-cycle
Search
shinden
August 18, 2018
Technology
3
1.8k
ふりかえりは僕らのチームの改善サイクル / kaizen-cycle
ふりかえりを上手くやるための観点
実際の改善したことのサンプルなど
shinden
August 18, 2018
Tweet
Share
More Decks by shinden
See All by shinden
CREってこういうこと? 体験入社 - 提案資料 - / what-is-cre-trial-employment
shinden
1
820
【LT版】技術的負債を抱えながら それでも生きていく / LT.ver Living with technical debt
shinden
3
1.1k
【Startup Day 2023】技術的負債を抱えながら それでも生きていく / Living with technical debt
shinden
23
9.2k
環境変化に合わせた 開発組織とEM期待の変化
shinden
1
330
スクラムの窓から眺めてみた エンジニアリングマネジメント / em-meetup#10 scrum with em
shinden
1
1.3k
採用市場でモテるエンジニア/ popular engineer in recruiting market
shinden
25
8.7k
メルペイオンボーディング at Onboarding Meetup / Merpay Onboarding at onboarding meetup
shinden
2
4k
SESからWeb系に転職したときの話 / jobchanger-si-to-web
shinden
1
2.1k
小さく始めるアジャイル開発
shinden
0
890
Other Decks in Technology
See All in Technology
Incident Response Practices: Waroom's Features and Future Challenges
rrreeeyyy
0
160
テストコード品質を高めるためにMutation Testingライブラリ・Strykerを実戦導入してみた話
ysknsid25
7
2.7k
リンクアンドモチベーション ソフトウェアエンジニア向け紹介資料 / Introduction to Link and Motivation for Software Engineers
lmi
4
300k
TypeScriptの次なる大進化なるか!? 条件型を返り値とする関数の型推論
uhyo
2
1.7k
OCI 運用監視サービス 概要
oracle4engineer
PRO
0
4.8k
いざ、BSC討伐の旅
nikinusu
2
780
マルチモーダル / AI Agent / LLMOps 3つの技術トレンドで理解するLLMの今後の展望
hirosatogamo
37
12k
【Pycon mini 東海 2024】Google Colaboratoryで試すVLM
kazuhitotakahashi
2
540
CysharpのOSS群から見るModern C#の現在地
neuecc
2
3.5k
誰も全体を知らない ~ ロールの垣根を超えて引き上げる開発生産性 / Boosting Development Productivity Across Roles
kakehashi
1
230
rootlessコンテナのすゝめ - 研究室サーバーでもできる安全なコンテナ管理
kitsuya0828
3
390
初心者向けAWS Securityの勉強会mini Security-JAWSを9ヶ月ぐらい実施してきての近況
cmusudakeisuke
0
130
Featured
See All Featured
Building an army of robots
kneath
302
43k
What's new in Ruby 2.0
geeforr
343
31k
Bootstrapping a Software Product
garrettdimon
PRO
305
110k
The Power of CSS Pseudo Elements
geoffreycrofte
73
5.3k
What's in a price? How to price your products and services
michaelherold
243
12k
No one is an island. Learnings from fostering a developers community.
thoeni
19
3k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
229
52k
Designing for Performance
lara
604
68k
Writing Fast Ruby
sferik
627
61k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
25
1.8k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
27
4.3k
How STYLIGHT went responsive
nonsquared
95
5.2k
Transcript
カイゼン・ジャーニー・カンファレンス ふりかえりは 僕らのチームの改善サイクル CyberAgent, Inc. All Rights Reserved 2018/08/18 新田
智啓 (shinden tomohiro) 1
• 株式会社サイバーエージェント アドテク本部アドテクスタジオ LIVEDSP開発責任者 (開発チームマネージャ) スクラムマスタ認定 期間切れにより失効済み • 経歴 中小SIerからサイバーエージェントへ
2014年に中途入社 入社後はエンジニアとしてプログラムをバリバリ書いたあと 開発チームのマネジメントの開発責任者を担当 プロダクトの立ち上げ、チームのエンジニア文化改革、 技術リードの技術責任者などをプロダクトを移りながら経験 Profile 2
Profile • マネジメント経験としてのチームサイズ ◦ エンジニアチームの 0 → 1 立ち上げ ◦
5〜10弱人のチーム編成が多かった • マネジメント範囲 ◦ 技術側から何を作るべきか提案するプロジェクトマネジメント ◦ タスクを上手く回すプロジェクトマネジメント ◦ キャリア相談、モチベーション維持などピープルマネジメント ◦ 事業の次の展開を考慮したアーキテクチャ設計や 技術負債リスク把握などのシステムマネジメント 3
アドテクって? • Webページの広告画像や検索結果で出てくる広告テキストなど • 秒間10万リクエストも当たり前の前提 • そのログを集計するだけでもビッグデータ • 機械学習(AI)などを使って、マッチした広告を選ぶ •
邪魔な感じで出てくる広告は実は評価されない • 利用技術 ◦ AWS - Kinesis、ECS、DynamoDB、Redshift、CloudFormation、など ◦ GCP - PubSub、BigQuery、k8s、GCR、GAE、など など 一部紹介記事 https://developers.cyberagent.co.jp/blog/archives/12746/ 4
アドテクって? カオスマップ 5
チームの進め方 • スクラムベースですが厳格にやりませんでした • ガントチャート使いました • スクラムマスタ専任は居ません • マネージャはいました (僕です)
• チームには大きな権限と責任が与えられていました • すでにアジャイルすることに向いている環境 そのようなチームの中でのふりかえりに関する話 6
index • ふりかえりとは • 僕らのKPTの運用 • KPTが上手く回らないとき対処例 • 改善チャレンジしたサンプル •
まとめ 7
ふりかえりとは チームカイゼンのサイクル の 土台 はじめの一歩 8
チームカイゼンの はじまりの仕組み はじめの一歩 9
振り返り手法 • KPT (KPTA,KPT2など ) (+ ドット、カラードット → 優先順位、感情) 色々なKPT
参照 https://www.slideshare.net/nemorine/kpt-52662413 • YWT • タイムライン • セレブレーショングリッド (Management 3.0) • 感情にフォーカスしたふりかえり 同僚の考えた振り返り http://t-and-p.hatenablog.com/entry/good-bad-fact-emo • など 10
振り返り手法 ふりかえり手法は色々ある チームに合った振り返り手法を 実行する! どんどんカスタマイズする! 11
振り返り目的 僕らの振り返りの目的 チームのカイゼン 12
ふりかえりの意義 • 場を設定する 定期的に行われることで確実に振り返る • 情報を共有する 考えていることの情報をチームに行き渡らせる • アイデアを集める ディスカッションしてより良い方法を見つける
• 実行することを決める 実行アクションの合意を取る 13
ふりかえり とは なぜ全員で ふりかえりするのか? 14
ふりかえり とは 全員が揃っていないと 出来ないことがある 15
• 一定期間毎の場の設定 → サイクル定義 • 情報を共有 → 思いの共有 • アイデアを集める
→ 発想の融合 • 実行することを決める → 実行の合意 ふりかえりの意義 これらを一度に実行出来る効率的な会 16
• 一定期間毎の場の設定 → サイクル定義 • 情報を共有 → 思いの共有 • アイデアを集める
→ 発想の融合 • 実行することを決める → 実行の合意 ふりかえりの意義 チームの全員で作る 改善アイデアの実行サイクル 17
ふりかえり とは 実行に対する合意が必要 それは カイゼン = 変化 であるから 18
変化を恐れるのは 普通の反応 チャレンジの許容が出来る 変化のサイズとチームで はじめる チームではじめる 19
チームではじめる People don’t resist change. They resist being changed. 人は変化に抵抗するのではなく
変えられようとすることに抵抗する 20
チームではじめる Don’t change things; run experiments 変えるのではなく実験しよう 小さく実験してみて失敗したら戻せばいいし 成功したら続けばいい 21
チームではじめる 頭で理解していても 感情が納得していないと上手くいかない 自分たちで変わったんだ と言う意識が重要 22
• 場を設定する → サイクル定義 • 情報を共有する → 思いの共有 • アイデアを集める
→ 発想の融合 • 実行することを決める → 実行の合意 ふりかえりの意義 チームの全員で作る 改善アイデアの実行サイクル 23
僕らのKPT運用 僕らのKPT運用 24
KPTテンプレ Try ・やること(試すこと) 次のアクション議題 行動決定事項 Problem ・問題になっている事 ・気になっている事 課題解決 リスク情報の共有
Keep ・良かった事 ・続けたい事 みんなでお祝いする ハッピーの共有 25
KPTテンプレ Try ・やりたいこと ・やるべきこと 次のアクション議題 行動決定事項 Problem ・問題になっている事 ・気になっている事 課題解決
リスク情報の共有 Keep ・良かった事 ・続けたい事 みんなでお祝いする ハッピーの共有 思いや考えも 知りたい 26
KPTテンプレ Try ・やりたいこと ・やるべきこと 次のアクション議題 行動決定事項 Problem ・問題になっている事 ・気になっている事 課題解決
リスク情報の共有 Keep ・良かった事 ・続けたい事 みんなでお祝いする ハッピーの共有 全然優先度が違う 27
僕らのKPT運用 TODOとTRYを分ける (やるべきこと と やりたいことを分ける) なぜTODOと呼んでいるかと言うと 個人的に普通にソースコードには @TODOって書くので呼びやすかったから (本来KPTAと呼ばれる手法でActionと呼ぶ) 28
僕らのKPT運用 Try ・やりたいことだけを上 げる ・チャレンジや気持ちだ けでOK ・改善アイデア出しの ハードルを下げる Problem ・Tryに移動しない
・TODOが付いていない ものはアクションしない Keep ・Tryに移動しない ・続けたくてチェックが必 要なものにTODOをつけ る やるべきことは どの場所であっても @TODOをつける ミッション化する 29
• 議事録を取る ◦ 参加していない人にも情報共有 ◦ 次回の振り返りのときに確認する • KPTに慣れたハイレベルなチームの場合にはSlackに直 接投稿して議事録化している (KPTに慣れていないチームではオススメしない)
◦ 記入内容が直接議事録になる ◦ リアクションのアイコンを使うことで意見を喋らなくても 興味関心がわかる ◦ アイコンだけでTODOにしたり出来る 僕らのKPT運用 30
僕らのKPT運用 • Problemは全てのチケットに対してコメントする (議事録に書く) 課題に対してなんのリアクションも しないことはありえない! 31
僕らのKPT運用 • Problemは全てのチケットに対してコメントする ◦ TODOにする TODOにしたものは主担当を1人決める。 2人以上にするときには注意する。 (責任意識の分散で失敗しやすくなる) ◦ 状況把握し、問題認識を共有する
▪ 今、対応出来ない理由の説明など ◦ 別の課題リストに転記する (パーキングロット) ▪ 別リストに書き、認識を共有する 32
僕らのKPT運用 • Problemは全てのチケットに対してコメントする (議事録に書く) 課題に対してなんのリアクションも しないことはありえない! 33 全てにコメントがあるか議事録を確認する。 TODOアクションで無くても良い。 言及されているか、コメントがあるかの確認。
納得感が持てる形になっているか。
僕らのKPT運用 2回目以降のKPT • 議事録の前回TODOの進捗を確認 ◦ 主担当に聞く。進捗がゼロの場合はPloblem! ◦ コストサイズが問題のときは小さくする方法や別の担 当者を割り当てるなどの対策をする •
TODO以外は前回の内容を引き継がない ◦ 新しい嬉しかったことがあるはず ◦ 新しい問題があるはず ◦ 新しい改善アイデアがあるはず ◦ 同じ内容を書いてはいけないと言うことではない 34 永久に新しいカイゼン の ポイントを探す!
僕らのKPT運用 この進め方はあくまで 僕らのチームと事業スピードの バランスによるもの 自分のチームはどんなスタイルが合うかを考え それぞれのスタイルを探すこと 35
うまくいかないKPT対応 KPTが 上手く回らないとき対処例 ユースケース紹介 36
• 場を設定する → サイクル定義 • 情報を共有する → 思いの共有 • アイデアを集める
→ 発想の融合 • 実行することを決める → 実行の合意 ふりかえりの意義 チームの全員で作る 改善アイデアの実行サイクル 37
• 場を設定する → サイクル定義 • 情報を共有する → 思いの共有 • アイデアを集める
→ 発想の融合 • 実行することを決める → 実行の合意 ふりかえりの意義 1つでも上手く行っていないと 改善サイクルはまわらない 38
• 場を設定する → サイクル定義 • 情報を共有する → 思いの共有 • アイデアを集める
→ 発想の融合 • 実行することを決める → 実行の合意 ふりかえりの意義 チームの全員で作る 改善アイデアの実行サイクル 39
• 場を設定する → サイクル定義 • 定期的な設定がされていない → 3ヶ月先まで今すぐ予定を設定して下さい • KPTの予定がキャンセルされる
→ みんなが忙しくない時間を予定する • 全員が集まらない → KPTの意義を伝える。チームを小さくする うまくいかないKPTへの対応 KPTの周りはじめは ファシリテーターを積極的に買って出る (推進) 上手く回りだしたら積極的に任せる (自分化させる) 40
• 場を設定する → サイクル定義 • 情報を共有する → 思いの共有 • アイデアを集める
→ 発想の融合 • 実行することを決める → 実行の合意 ふりかえりの意義 チームの全員で作る 改善アイデアの実行サイクル 41
チケットが出ないときは基本的に煽りスタイル (あくまで僕個人のスタイルです) 逆にProblemで同じチケットが何度も出るときは対応不足。TODO化や別リストに して見える化をする。もしくは方針説明を果たす • 情報を共有する → 思いの共有 • Keepが少ない
→ 「楽しいことない?喜んだ人は居ない?事業やめたほうが良い?」と煽り ます • Problemが少ない → 「もう悪いところない?負債ゼロ?」と煽ります • Tryが少ない → 「もう改善するところない?最高の状態?」と煽ります うまくいかないKPTへの対応 42
• 場を設定する → サイクル定義 • 情報を共有する → 思いの共有 • アイデアを集める
→ 発想の融合 • 実行することを決める → 実行の合意 ふりかえりの意義 チームの全員で作る 改善アイデアの実行サイクル 43
個々の関心が強い場所や強みとなっている場所に あわせてアイデアを引き出す アイデアは責任と分離していることを明確にして 発言への安心感を作る • アイデアを集める → 発想の融合 • アイデアが出ず話し合いにならない
→ もっと何かありそうじゃない?誰かを指名して意見を聞く • 批判的な意見が強い → 課題バックログを別に作り、リストに追加する。 追加するときに、どういう状態になったら実行するかを明確にする。 見える化しておくことでチームで共通認識があると安心できる。 うまくいかないKPTへの対応 44
• 場を設定する → サイクル定義 • 情報を共有する → 思いの共有 • アイデアを集める
→ 発想の融合 • 実行することを決める → 実行の合意 ふりかえりの意義 チームの全員で作る 改善アイデアの実行サイクル 45
実行するとみんなの居る場で決めているので あとから言う文句は聞く必要なし アイデアを出すことに比べ、行動はコストが高いので 建設的な意見であるべき • 実行することを決める → 実行の合意 • 実行されない
→ タスクサイズは次のKPTまでに動けるサイズになっているか?完成させ ることではなく、動き出す形にすることをここでのゴールにする → 主担当を変えるのも良い方法です • やることだらけになってしまった → コストが合わないなら気軽にやめてしまって良いです うまくいかないKPTへの対応 46
• 場を設定する → サイクル定義 • 情報を共有する → 思いの共有 • アイデアを集める
→ 発想の融合 • 実行することを決める → 実行の合意 ふりかえりの意義 チームの全員で作る 改善アイデアの実行サイクル 47
• カイゼンサイクル → 実行サイクル • TODOが実行されない → 前回TODOをふりかえって下さい。議事録は書いていますか? チームの中で1人だけでも気がつけば出来ます。
• 良くなっている感じがしない → あったことをただ並べてるだけになっていないか? チームをカイゼンすると言うテーマを意識し、実行する • やっている意味がわからない → 振り返りの違うプラクティスを試しても良いかもしれません うまくいかないKPTへの対応 48
うまくいかないKPTへの対応 うまく回り出すまでは ファシリテーション力が 問われる 49
うまくいかないKPTへの対応 1人で解決案を出すのが難しいときは カイゼンの関心がある人を 1人か2人集めて ふりかえり会のふりかえり会を 実施するのも良い 50
うまくいかないKPTへの対応 プロジェクトを上手く進めることに フォーカスするのではなく カイゼン方法を出すことや カイゼン課題を出すことに フォーカスを当てたKPT 51
改善(&失敗)サンプル 僕らKPT実行サンプル 52
あらゆるカイゼン策を実験してみる 短期のボトルネック解決の改善や 長期にチームの土台になる改善まで 改善(&失敗)サンプル 53
とは言え リソースは有限 実行にはコストが掛かる コストを小さく、メリットが大きくなるやり方を考える 理想だけでは実行できない リスク/コストが小さくなるように実行 改善(&失敗)サンプル 54
◦ ベロシティ計測を追加 ◦ ベロシティ計測の終了 ◦ プランニングポーカー時間の設定 ◦ スプリント単位でのタスク管理の終了 ◦ バックログ管理方法の変更
◦ カンバンのReview列の追加 ◦ ペアプロ ◦ インフラ構成ミーティングの設定 ◦ Doneの定義の再確認の設定 ◦ 朝会時間の変更 ◦ 算数勉強会の開催 (機械学習数学) ◦ Scala勉強会開催、関数型勉強会の開催 改善(&失敗)サンプル 55
◦ データで見る会議の設定 ◦ プランニングポーカー時間の設定 ◦ 集中タイムの設定 (Noミーティング時間) ◦ Gitリポジトリ戦略の課題解決の会議設定 ◦
自己紹介で分析サイトの結果を追加 ◦ シャッフルランチの開催 ◦ シャッフルランチの停止 ◦ 朝会に居なかった人はslackでやることを報告 ◦ 朝会の議事録を3行でslack連絡 ◦ 週1フレックス - 朝会などの会議時間も変更 ◦ エアコンの風よけを手配 ◦ 扇風機購入 改善(&失敗)サンプル 56
◦ 週1発表会の設定 ◦ 分報 ◦ ニコニコカレンダー ◦ 2フェーズKPT (プロダクト全員 、エンジニアonlyの2回行う)
◦ モブプロ、ペアプロ ◦ 全体アーキテクチャを書いてみる会 ◦ 仕様説明会の設定 ◦ 週1朝ストレッチ、 週1瞑想 ◦ 感謝会 ◦ SlackBot-KPT ◦ ビジネスビジョンの説明の会議設定 ◦ 体重測定 体重計→IFTTT→Datadog & Slack 改善(&失敗)サンプル 57
正直いっぱい失敗してる! 回数を数えられないくらい! それでも、チームがどんどん カイゼンしてる! 改善(&失敗)サンプル 58
アジャイルで行こう アジャイルプラクティスはただ実行するものではなく アジャイルになるための一つの方法に過ぎない Don’t just do agile. Be agile. 59
アジャイルで行こう アジャイルトランスフォーメーションは アジャイルプラクティスのインストールでは無い Don’t just do agile. Be agile. 60
アジャイルで行こう 組織の改革を意識するチームであることが必要 Don’t just do agile. Be agile. 61
まわせ!改善サイクル! ふりかえりで小さく1歩ずつ進む カイゼンジャーニー チーム全員で チームを常にカイゼンさせよう! 終わり 62