Slide 1

Slide 1 text

カイゼン・ジャーニー・カンファレンス ふりかえりは 僕らのチームの改善サイクル CyberAgent, Inc. All Rights Reserved 2018/08/18 新田 智啓 (shinden tomohiro) 1

Slide 2

Slide 2 text

● 株式会社サイバーエージェント アドテク本部アドテクスタジオ LIVEDSP開発責任者 (開発チームマネージャ) スクラムマスタ認定 期間切れにより失効済み ● 経歴 中小SIerからサイバーエージェントへ 2014年に中途入社 入社後はエンジニアとしてプログラムをバリバリ書いたあと 開発チームのマネジメントの開発責任者を担当 プロダクトの立ち上げ、チームのエンジニア文化改革、 技術リードの技術責任者などをプロダクトを移りながら経験 Profile 2

Slide 3

Slide 3 text

Profile ● マネジメント経験としてのチームサイズ ○ エンジニアチームの 0 → 1 立ち上げ ○ 5〜10弱人のチーム編成が多かった ● マネジメント範囲 ○ 技術側から何を作るべきか提案するプロジェクトマネジメント ○ タスクを上手く回すプロジェクトマネジメント ○ キャリア相談、モチベーション維持などピープルマネジメント ○ 事業の次の展開を考慮したアーキテクチャ設計や 技術負債リスク把握などのシステムマネジメント 3

Slide 4

Slide 4 text

アドテクって? ● Webページの広告画像や検索結果で出てくる広告テキストなど ● 秒間10万リクエストも当たり前の前提 ● そのログを集計するだけでもビッグデータ ● 機械学習(AI)などを使って、マッチした広告を選ぶ ● 邪魔な感じで出てくる広告は実は評価されない ● 利用技術 ○ AWS - Kinesis、ECS、DynamoDB、Redshift、CloudFormation、など ○ GCP - PubSub、BigQuery、k8s、GCR、GAE、など など 一部紹介記事 https://developers.cyberagent.co.jp/blog/archives/12746/ 4

Slide 5

Slide 5 text

アドテクって? カオスマップ 5

Slide 6

Slide 6 text

チームの進め方 ● スクラムベースですが厳格にやりませんでした ● ガントチャート使いました ● スクラムマスタ専任は居ません ● マネージャはいました (僕です) ● チームには大きな権限と責任が与えられていました ● すでにアジャイルすることに向いている環境 そのようなチームの中でのふりかえりに関する話 6

Slide 7

Slide 7 text

index ● ふりかえりとは ● 僕らのKPTの運用 ● KPTが上手く回らないとき対処例 ● 改善チャレンジしたサンプル ● まとめ 7

Slide 8

Slide 8 text

ふりかえりとは チームカイゼンのサイクル の 土台 はじめの一歩 8

Slide 9

Slide 9 text

チームカイゼンの はじまりの仕組み はじめの一歩 9

Slide 10

Slide 10 text

振り返り手法 ● 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

Slide 11

Slide 11 text

振り返り手法 ふりかえり手法は色々ある チームに合った振り返り手法を 実行する! どんどんカスタマイズする! 11

Slide 12

Slide 12 text

振り返り目的 僕らの振り返りの目的 チームのカイゼン 12

Slide 13

Slide 13 text

ふりかえりの意義 ● 場を設定する  定期的に行われることで確実に振り返る ● 情報を共有する  考えていることの情報をチームに行き渡らせる ● アイデアを集める  ディスカッションしてより良い方法を見つける ● 実行することを決める  実行アクションの合意を取る 13

Slide 14

Slide 14 text

ふりかえり とは なぜ全員で ふりかえりするのか? 14

Slide 15

Slide 15 text

ふりかえり とは 全員が揃っていないと 出来ないことがある 15

Slide 16

Slide 16 text

● 一定期間毎の場の設定 → サイクル定義 ● 情報を共有      → 思いの共有 ● アイデアを集める   → 発想の融合 ● 実行することを決める → 実行の合意 ふりかえりの意義 これらを一度に実行出来る効率的な会 16

Slide 17

Slide 17 text

● 一定期間毎の場の設定 → サイクル定義 ● 情報を共有      → 思いの共有 ● アイデアを集める   → 発想の融合 ● 実行することを決める → 実行の合意 ふりかえりの意義 チームの全員で作る 改善アイデアの実行サイクル 17

Slide 18

Slide 18 text

ふりかえり とは 実行に対する合意が必要 それは カイゼン = 変化 であるから 18

Slide 19

Slide 19 text

変化を恐れるのは 普通の反応 チャレンジの許容が出来る 変化のサイズとチームで はじめる チームではじめる 19

Slide 20

Slide 20 text

チームではじめる People don’t resist change. They resist being changed. 人は変化に抵抗するのではなく 変えられようとすることに抵抗する 20

Slide 21

Slide 21 text

チームではじめる Don’t change things; run experiments 変えるのではなく実験しよう 小さく実験してみて失敗したら戻せばいいし 成功したら続けばいい 21

Slide 22

Slide 22 text

チームではじめる 頭で理解していても 感情が納得していないと上手くいかない 自分たちで変わったんだ と言う意識が重要 22

Slide 23

Slide 23 text

● 場を設定する     → サイクル定義 ● 情報を共有する    → 思いの共有 ● アイデアを集める   → 発想の融合 ● 実行することを決める → 実行の合意 ふりかえりの意義 チームの全員で作る 改善アイデアの実行サイクル 23

Slide 24

Slide 24 text

僕らのKPT運用 僕らのKPT運用 24

Slide 25

Slide 25 text

KPTテンプレ Try ・やること(試すこと) 次のアクション議題 行動決定事項 Problem ・問題になっている事 ・気になっている事 課題解決 リスク情報の共有 Keep ・良かった事 ・続けたい事 みんなでお祝いする ハッピーの共有 25

Slide 26

Slide 26 text

KPTテンプレ Try ・やりたいこと ・やるべきこと 次のアクション議題 行動決定事項 Problem ・問題になっている事 ・気になっている事 課題解決 リスク情報の共有 Keep ・良かった事 ・続けたい事 みんなでお祝いする ハッピーの共有 思いや考えも 知りたい 26

Slide 27

Slide 27 text

KPTテンプレ Try ・やりたいこと ・やるべきこと 次のアクション議題 行動決定事項 Problem ・問題になっている事 ・気になっている事 課題解決 リスク情報の共有 Keep ・良かった事 ・続けたい事 みんなでお祝いする ハッピーの共有 全然優先度が違う 27

Slide 28

Slide 28 text

僕らのKPT運用 TODOとTRYを分ける (やるべきこと と やりたいことを分ける) なぜTODOと呼んでいるかと言うと 個人的に普通にソースコードには @TODOって書くので呼びやすかったから (本来KPTAと呼ばれる手法でActionと呼ぶ) 28

Slide 29

Slide 29 text

僕らのKPT運用 Try ・やりたいことだけを上 げる ・チャレンジや気持ちだ けでOK ・改善アイデア出しの ハードルを下げる Problem ・Tryに移動しない ・TODOが付いていない ものはアクションしない Keep ・Tryに移動しない ・続けたくてチェックが必 要なものにTODOをつけ る やるべきことは どの場所であっても @TODOをつける ミッション化する 29

Slide 30

Slide 30 text

● 議事録を取る ○ 参加していない人にも情報共有 ○ 次回の振り返りのときに確認する ● KPTに慣れたハイレベルなチームの場合にはSlackに直 接投稿して議事録化している (KPTに慣れていないチームではオススメしない) ○ 記入内容が直接議事録になる ○ リアクションのアイコンを使うことで意見を喋らなくても 興味関心がわかる ○ アイコンだけでTODOにしたり出来る 僕らのKPT運用 30

Slide 31

Slide 31 text

僕らのKPT運用 ● Problemは全てのチケットに対してコメントする (議事録に書く) 課題に対してなんのリアクションも しないことはありえない! 31

Slide 32

Slide 32 text

僕らのKPT運用 ● Problemは全てのチケットに対してコメントする ○ TODOにする TODOにしたものは主担当を1人決める。 2人以上にするときには注意する。 (責任意識の分散で失敗しやすくなる) ○ 状況把握し、問題認識を共有する ■ 今、対応出来ない理由の説明など ○ 別の課題リストに転記する (パーキングロット) ■ 別リストに書き、認識を共有する 32

Slide 33

Slide 33 text

僕らのKPT運用 ● Problemは全てのチケットに対してコメントする (議事録に書く) 課題に対してなんのリアクションも しないことはありえない! 33 全てにコメントがあるか議事録を確認する。 TODOアクションで無くても良い。 言及されているか、コメントがあるかの確認。 納得感が持てる形になっているか。

Slide 34

Slide 34 text

僕らのKPT運用 2回目以降のKPT ● 議事録の前回TODOの進捗を確認 ○ 主担当に聞く。進捗がゼロの場合はPloblem! ○ コストサイズが問題のときは小さくする方法や別の担 当者を割り当てるなどの対策をする ● TODO以外は前回の内容を引き継がない ○ 新しい嬉しかったことがあるはず ○ 新しい問題があるはず ○ 新しい改善アイデアがあるはず ○ 同じ内容を書いてはいけないと言うことではない 34 永久に新しいカイゼン の ポイントを探す!

Slide 35

Slide 35 text

僕らのKPT運用 この進め方はあくまで 僕らのチームと事業スピードの バランスによるもの 自分のチームはどんなスタイルが合うかを考え それぞれのスタイルを探すこと 35

Slide 36

Slide 36 text

うまくいかないKPT対応 KPTが 上手く回らないとき対処例 ユースケース紹介 36

Slide 37

Slide 37 text

● 場を設定する     → サイクル定義 ● 情報を共有する    → 思いの共有 ● アイデアを集める   → 発想の融合 ● 実行することを決める → 実行の合意 ふりかえりの意義 チームの全員で作る 改善アイデアの実行サイクル 37

Slide 38

Slide 38 text

● 場を設定する     → サイクル定義 ● 情報を共有する    → 思いの共有 ● アイデアを集める   → 発想の融合 ● 実行することを決める → 実行の合意 ふりかえりの意義 1つでも上手く行っていないと 改善サイクルはまわらない 38

Slide 39

Slide 39 text

● 場を設定する     → サイクル定義 ● 情報を共有する    → 思いの共有 ● アイデアを集める   → 発想の融合 ● 実行することを決める → 実行の合意 ふりかえりの意義 チームの全員で作る 改善アイデアの実行サイクル 39

Slide 40

Slide 40 text

● 場を設定する     → サイクル定義 ● 定期的な設定がされていない → 3ヶ月先まで今すぐ予定を設定して下さい ● KPTの予定がキャンセルされる → みんなが忙しくない時間を予定する ● 全員が集まらない → KPTの意義を伝える。チームを小さくする うまくいかないKPTへの対応 KPTの周りはじめは ファシリテーターを積極的に買って出る (推進) 上手く回りだしたら積極的に任せる (自分化させる) 40

Slide 41

Slide 41 text

● 場を設定する     → サイクル定義 ● 情報を共有する    → 思いの共有 ● アイデアを集める   → 発想の融合 ● 実行することを決める → 実行の合意 ふりかえりの意義 チームの全員で作る 改善アイデアの実行サイクル 41

Slide 42

Slide 42 text

チケットが出ないときは基本的に煽りスタイル (あくまで僕個人のスタイルです) 逆にProblemで同じチケットが何度も出るときは対応不足。TODO化や別リストに して見える化をする。もしくは方針説明を果たす ● 情報を共有する    → 思いの共有 ● Keepが少ない → 「楽しいことない?喜んだ人は居ない?事業やめたほうが良い?」と煽り ます ● Problemが少ない → 「もう悪いところない?負債ゼロ?」と煽ります ● Tryが少ない → 「もう改善するところない?最高の状態?」と煽ります うまくいかないKPTへの対応 42

Slide 43

Slide 43 text

● 場を設定する     → サイクル定義 ● 情報を共有する    → 思いの共有 ● アイデアを集める   → 発想の融合 ● 実行することを決める → 実行の合意 ふりかえりの意義 チームの全員で作る 改善アイデアの実行サイクル 43

Slide 44

Slide 44 text

個々の関心が強い場所や強みとなっている場所に あわせてアイデアを引き出す アイデアは責任と分離していることを明確にして 発言への安心感を作る ● アイデアを集める   → 発想の融合 ● アイデアが出ず話し合いにならない → もっと何かありそうじゃない?誰かを指名して意見を聞く ● 批判的な意見が強い → 課題バックログを別に作り、リストに追加する。  追加するときに、どういう状態になったら実行するかを明確にする。  見える化しておくことでチームで共通認識があると安心できる。 うまくいかないKPTへの対応 44

Slide 45

Slide 45 text

● 場を設定する     → サイクル定義 ● 情報を共有する    → 思いの共有 ● アイデアを集める   → 発想の融合 ● 実行することを決める → 実行の合意 ふりかえりの意義 チームの全員で作る 改善アイデアの実行サイクル 45

Slide 46

Slide 46 text

実行するとみんなの居る場で決めているので あとから言う文句は聞く必要なし アイデアを出すことに比べ、行動はコストが高いので 建設的な意見であるべき ● 実行することを決める → 実行の合意 ● 実行されない → タスクサイズは次のKPTまでに動けるサイズになっているか?完成させ ることではなく、動き出す形にすることをここでのゴールにする → 主担当を変えるのも良い方法です ● やることだらけになってしまった → コストが合わないなら気軽にやめてしまって良いです うまくいかないKPTへの対応 46

Slide 47

Slide 47 text

● 場を設定する     → サイクル定義 ● 情報を共有する    → 思いの共有 ● アイデアを集める   → 発想の融合 ● 実行することを決める → 実行の合意 ふりかえりの意義 チームの全員で作る 改善アイデアの実行サイクル 47

Slide 48

Slide 48 text

● カイゼンサイクル → 実行サイクル ● TODOが実行されない → 前回TODOをふりかえって下さい。議事録は書いていますか?   チームの中で1人だけでも気がつけば出来ます。 ● 良くなっている感じがしない → あったことをただ並べてるだけになっていないか? チームをカイゼンすると言うテーマを意識し、実行する ● やっている意味がわからない → 振り返りの違うプラクティスを試しても良いかもしれません うまくいかないKPTへの対応 48

Slide 49

Slide 49 text

うまくいかないKPTへの対応 うまく回り出すまでは ファシリテーション力が 問われる 49

Slide 50

Slide 50 text

うまくいかないKPTへの対応 1人で解決案を出すのが難しいときは カイゼンの関心がある人を 1人か2人集めて ふりかえり会のふりかえり会を 実施するのも良い 50

Slide 51

Slide 51 text

うまくいかないKPTへの対応 プロジェクトを上手く進めることに フォーカスするのではなく カイゼン方法を出すことや カイゼン課題を出すことに フォーカスを当てたKPT 51

Slide 52

Slide 52 text

改善(&失敗)サンプル 僕らKPT実行サンプル 52

Slide 53

Slide 53 text

あらゆるカイゼン策を実験してみる 短期のボトルネック解決の改善や 長期にチームの土台になる改善まで 改善(&失敗)サンプル 53

Slide 54

Slide 54 text

とは言え リソースは有限 実行にはコストが掛かる コストを小さく、メリットが大きくなるやり方を考える 理想だけでは実行できない リスク/コストが小さくなるように実行 改善(&失敗)サンプル 54

Slide 55

Slide 55 text

○ ベロシティ計測を追加 ○ ベロシティ計測の終了 ○ プランニングポーカー時間の設定 ○ スプリント単位でのタスク管理の終了 ○ バックログ管理方法の変更 ○ カンバンのReview列の追加 ○ ペアプロ ○ インフラ構成ミーティングの設定 ○ Doneの定義の再確認の設定 ○ 朝会時間の変更 ○ 算数勉強会の開催 (機械学習数学) ○ Scala勉強会開催、関数型勉強会の開催 改善(&失敗)サンプル 55

Slide 56

Slide 56 text

○ データで見る会議の設定 ○ プランニングポーカー時間の設定 ○ 集中タイムの設定 (Noミーティング時間) ○ Gitリポジトリ戦略の課題解決の会議設定 ○ 自己紹介で分析サイトの結果を追加 ○ シャッフルランチの開催 ○ シャッフルランチの停止 ○ 朝会に居なかった人はslackでやることを報告 ○ 朝会の議事録を3行でslack連絡 ○ 週1フレックス - 朝会などの会議時間も変更 ○ エアコンの風よけを手配 ○ 扇風機購入 改善(&失敗)サンプル 56

Slide 57

Slide 57 text

○ 週1発表会の設定 ○ 分報 ○ ニコニコカレンダー ○ 2フェーズKPT (プロダクト全員 、エンジニアonlyの2回行う) ○ モブプロ、ペアプロ ○ 全体アーキテクチャを書いてみる会 ○ 仕様説明会の設定 ○ 週1朝ストレッチ、 週1瞑想 ○ 感謝会 ○ SlackBot-KPT ○ ビジネスビジョンの説明の会議設定 ○ 体重測定 体重計→IFTTT→Datadog & Slack 改善(&失敗)サンプル 57

Slide 58

Slide 58 text

正直いっぱい失敗してる! 回数を数えられないくらい! それでも、チームがどんどん カイゼンしてる! 改善(&失敗)サンプル 58

Slide 59

Slide 59 text

アジャイルで行こう アジャイルプラクティスはただ実行するものではなく アジャイルになるための一つの方法に過ぎない Don’t just do agile. Be agile. 59

Slide 60

Slide 60 text

アジャイルで行こう アジャイルトランスフォーメーションは アジャイルプラクティスのインストールでは無い Don’t just do agile. Be agile. 60

Slide 61

Slide 61 text

アジャイルで行こう 組織の改革を意識するチームであることが必要 Don’t just do agile. Be agile. 61

Slide 62

Slide 62 text

まわせ!改善サイクル! ふりかえりで小さく1歩ずつ進む カイゼンジャーニー チーム全員で チームを常にカイゼンさせよう! 終わり 62