team refactoring -強いチームをつくる技術- #dotsconf

86
Team Refactoring - 強いチームをつくる技術 - 及部 敬雄 @TAKAKING22 Photo by Natural-Heart(https://goo.gl/9vjZ2L)

Upload: takao-oyobe

Post on 14-Apr-2017

1.169 views

Category:

Technology


2 download

TRANSCRIPT

Team Refactoring - 強いチームをつくる技術 -

及部 敬雄@TAKAKING22Photo by Natural-Heart(https://goo.gl/9vjZ2L)

@TAKAKING22

及部 敬雄@TAKAKING22✓ 楽天株式会社 ✓ 歌って踊れるエンジニア ✓ 野生のアジャイラー ✓ 邪道スクラムマスター ✓ チェンジエージェント ✓ アイドルマスター ✓ レインメーカー

@TAKAKING22

ストレッチタイム

Photo by SILHOUETTE DESIGN(http://kage-design.com/)

@TAKAKING22

まわりを見てください✓ すぐに立ってやる人 ✓ まわりを見てはじめる人 ✓ 絶対にやろうとしない人 ✓ ノリノリな人 ✓ イヤイヤな人

@TAKAKING22Photo by Melanie(https://goo.gl/BqGANw)

いろんな人がいる中 チームでものづくりするのは大変

@TAKAKING22

開発現場でよく見る問題✓ レガシーシステム ✓ メンバーのスキルが低い ✓ 人材が不足している ✓ 割り込みタスクが多い ✓ いつも炎上している

@TAKAKING22Photo by フリー写真素材ぱくたそ(https://www.pakutaso.com/)

実は殆どが技術的な問題ではなく チーム・コミュニケーションの問題

@TAKAKING22

実際のところ、ソフトウェア開発上の問題の 多くは、技術的というより社会学的なものである

by トム・デマルコ / ティモシー・リスター(ピープルウェア)

@TAKAKING22

開発の仕組みは広まっているが、 現場の問題はあまり変わってない

@TAKAKING22Photo by loa bacon(https://goo.gl/jpUXVY)

“ふつう”にやっているだけでは うまくいかないのかもしれない

@TAKAKING22Photo by Chris Potter(https://goo.gl/VNkzFG)

差分はなんだろうか?

@TAKAKING22

✓ ダメなプロダクトをよいつくり方で つくるとダメなものが生まれる

✓ よいプロダクトをダメなつくり方で つくるとダメなものが生まれる

よいプロダクトをよいつくり方でつくる必要がある

@TAKAKING22Photo by Giuseppe Milo(https://goo.gl/NQ0VXV)

プロダクトは継続する

@TAKAKING22

ビジネス 開発

チーム

プロダクト開発の構成要素

@TAKAKING22

チーム

開発

ビジネスチームがビジネスと開発の基盤

チーム@TAKAKING22

チームが揺らげば崩れてしまう

開発

ビジネス

@TAKAKING22

よいプロダクトを よいつくり方でつくり続ける

強いチームが必要Photo by Natural-Heart(https://goo.gl/9vjZ2L)

@TAKAKING22

Slide by Ryuzeeさん(http://goo.gl/LmcqjP)

@TAKAKING22

1エンジニアの自分が、 実際の現場で何度も小さな失敗を繰り返しながら強いチームをつくるためにやってきたこと、 その中で得たチームづくりの コツと必要なマインドセット

今日話すこと

@TAKAKING22

#1 強いチームとは

@TAKAKING22

チームは、共通の目的、達成すべき 目標、そのためのやり方を共有し、 連帯責任を果たせる補完的なスキル

を備えた少人数の集合体 by Wikipedia

@TAKAKING22Photo by Flavio~(https://goo.gl/6GZFi5)

チーム ≠ 烏合の衆

@TAKAKING22Photo by Groundhopping Merseburg(https://goo.gl/yhzRx5)

共通の目的、コラボレーション

@TAKAKING22

強さの定義はチームによって違う

Photo by フリー写真素材ぱくたそ(https://www.pakutaso.com/)

@TAKAKING22

共通していること✓ 1+1+ … +1 = n以上である ✓ 変化に強い ✓ チームの文化が存在する ✓ 改善サイクルがまわっている ✓ チームが継続的である

n

@TAKAKING22

#2 チームリファクタリングの進め方

Photo by Natural-Heart(https://goo.gl/9vjZ2L)

@TAKAKING22

強いチームは意識的につくる

@TAKAKING22

Q. 誰が?

A. チームが

Photo by Eli Christman(https://goo.gl/z10oQW)

@TAKAKING22

誰かがやっている内は継続しない 自転車を押すくらいのイメージ

@TAKAKING22

自分達で自分達を強くする そしてそれを自分達で続ける

@TAKAKING22

Team RefactoringPhoto by Rainier Martin Ampongan(https://goo.gl/wv3ZRV)

@TAKAKING22

チームの今を知る

@TAKAKING22

強共通の目的をつくる

@TAKAKING22

強次

ブレイクダウンした目標を設定

@TAKAKING22

強次

実施⇒振り返り⇒次の目標を設定

@TAKAKING22

強それをひたすら繰り返す

@TAKAKING22

Team Refactoring1. チームの今を知る 2. 共通の目的をつくる 3. 目的をブレイクダウンして目標を設定 4. 結果をできるだけVisualでふりかえる 5. それをひたすら繰り返す

@TAKAKING22

Slide by Ryuzeeさん(http://goo.gl/LmcqjP)

混乱しているチームは このあたりをうろうろ していることが多い

@TAKAKING22by Vladimer Shioshvili(https://goo.gl/CmnEMB)

混乱しているところで 挑戦してもさらなる混乱を生む

@TAKAKING22

Team Refactoring1. チームの今を知る 1.1. 困っている問題から解決する 1.2. 振り返りの場をつくって成功を喜ぶ 1.3. しばらく続けて習慣化する 2. 共通の目的をつくる 3. 目的をブレイクダウンして目標を設定 4. 結果をできるだけVisualでふりかえる 5. それをひたすら繰り返す

@TAKAKING22

実際の現場でやっている Team Refactoringを

一部ご紹介

@TAKAKING22

Case 1on1カフェトーク✓ チームに入ったら実施する ✓ 各チームメンバーと1on1で話す ✓ コーヒーを飲みながら気軽に話す ✓ なるべく相手に話してもらう ✓ 相手の考えていることを聴く ✓ 「こうなったらいいのにな」 ✓ その後も定期的に実施する

@TAKAKING22

Case

by Matthew Hurst(https://goo.gl/cRUyX2)

大きな問題には皆気づいている 個人個人の本音を話す場 キーパーソンがわかる

@TAKAKING22

Case ふりかえり(初期)✓ チームに入ったら1度機会を貰う ✓ 最初はアイスブレイクに力を入れる ✓ 各個人が話す機会をつくる ✓ 全員で考えて選択する ✓ 小さな成功を大きく喜ぶ ✓ 最後に続けるかどうかを問う ✓ 定期的に実施する

@TAKAKING22

Case

少しずつオーナーシップが生まれる 一定のリズムが生まれる

@TAKAKING22

Case チームインセプションデッキ✓ 自分達でチームの共通の目的を作る ✓ できるだけ見える成果を設定にする ✓ 定期的にふりかえって更新する ✓ マネージャーとすり合わせる ✓ 時間が取りにくければ、個別にヒアリングして一部まとめておく ✓ ただし最後はチーム全員で合意する

@TAKAKING22

Case

@TAKAKING22

Case

✓ チームのミッション ✓ チームのテーマ ✓ チームが抱えている問題 ✓ チームレーダーチャート ✓ チームロードマップ ✓ 個人のチームへの貢献

@TAKAKING22

Case

チームの共通のゴールが 明文化される

@TAKAKING22

Case チームレーダーチャート✓ チームにとって重要なトピックを各自で書き出して共有する ✓ 特に大事だと思う5つに投票 ✓ 選んだ5つについて各自で10点 満点で現在のチームを評価する ✓ 全員の平均をレーダー化する ✓ 定期的に振り返り進捗を記録する

@TAKAKING22

Case

@TAKAKING22

Case

自分達で自分達の 定性的な評価をする

@TAKAKING22

Case チームロードマップ✓ チームでTryすべきこと・解決したい問題を各自で書き出す ✓ レーダーチャートの5項目の内、最も近いトピックの近くに貼る ✓ トピックごとに優先順位を決める ✓ 結果を元にロードマップを作成する ✓ マネージャーとすり合わせる

@TAKAKING22

Case

@TAKAKING22

Case

@TAKAKING22

Case

チーム改善のロードマップが全員の共通認識になる

@TAKAKING22

Case スキルマップ✓ チームに必要なスキルセットをリストアップする ✓ 各メンバーが自己評価を実施するex. ☆人に教えられる,○1人でできる,△サポートがあればできる,♪やってみたい ✓ 定期的に更新する ✓ 新メンバーの受け入れ時や採用面談の時に使用する ✓ 各スキルの教育コンテンツを提供

@TAKAKING22

Case

@TAKAKING22

Case

チームの強み・弱みがわかる 個人のスキルアップの目標になる メンバー入替の判断材料になる

@TAKAKING22

コツ✓ 本やプレゼンや他人ではなくチームからの学びを第一にする ✓ チームに、個人に傾聴する ✓ 小さくても繰り返し、続ける ✓ チームも自分も楽しむ ✓ 無理はしない、早めに諦める

@TAKAKING22

ex. 2年半続けると…130 回ふりかえりをして 2,173 個のよかったを見つけて 2,098 個の問題と向き合い 299 個のTryをしてきた

@TAKAKING22

ex. 2年半続けると…

イヤでもよくなる!!

- Tryの総数 -

@TAKAKING22

#3 チームを超えたその先

@TAKAKING22

チーム

開発

ビジネスチームがビジネスと開発の基盤

@TAKAKING22

チーム開発

ビジネス

組織チーム開発

ビジネス組織がチームの基盤

@TAKAKING22

チーム開発ビジ

ネス

組織

チーム

開発ビジネス

組織がチームを支えられない場合

@TAKAKING22

組織の構造がシステムの設計にも 大きな影響を与える

by メルヴィン・コンウェイ(コンウェイの法則)

@TAKAKING22

組織の構造がプロダクトの品質にも 大きな影響を与える

by フレデリック・ブルックス(ブルックスの人月の神話)

@TAKAKING22 Article by Publickey(http://goo.gl/E0L6w)

組織が品質に与える影響の実証

@TAKAKING22

最近のHot Topicsも組織絡み

DevOps Microservice価値提供までのリードタイムの話 なので組織を超えた改善が必要

組織とセットで考えずに流行りに 飛びついてに導入すると失敗する

@TAKAKING22Photo by Dennis Jarvis(https://goo.gl/DVWMbb)

カベを超えるために 組織改善は不可欠

@TAKAKING22Photo by Dandelion Soup(https://goo.gl/e4Xjmh)

組織の話になると嫌煙しがち

@TAKAKING22

自分達の組織を変えるのは誰だ!?

Photo by フリー写真素材ぱくたそ(https://www.pakutaso.com/)

@TAKAKING22

未来会議

✓ 組織についてふりかえる場 ✓ マネジメント陣も参加 ✓ 大きな問題も議論の対象にする ✓ 未来志向で考える ✓ そのまま飲み会に行く流れ ✓ うまくいったらサイクルにする

Case

@TAKAKING22

因果関係図をつくって事前準備

Case

@TAKAKING22

全員で組織の問題・課題を分析

Case

@TAKAKING22

チームに別れて改善策を考える

Case

@TAKAKING22

✓ 師匠となるエンジニアの不足 ✓ 新しい技術挑戦ができていない ✓ 儲かるサービスが少ない ✓ サービスが多すぎる ✓ そもそも仮説が立っていない

Case 未来会議で出たProblem

@TAKAKING22

✓ 思ったよりみんな積極的だった ✓ 普段話せなかった話ができた ✓ 忌憚ない意見が出た ✓ お互いの考え方がわかった ✓ 組織について話す場ができた

Case 参加者からのフィードバック

@TAKAKING22

その後の飲み会が一番盛り上がった

Photo by フリー写真素材ぱくたそ(https://www.pakutaso.com/)

Case

@TAKAKING22

Slide by 佐藤さん(http://goo.gl/ZGn7O7)

@TAKAKING22

#4 これから取り組むあなたへ

@TAKAKING22

やらない理由はたくさん見つかる✓ コード書いていたい ✓ それは自分の仕事ではない ✓ うちは大企業だからなかなか… ✓ 忙しいからそれどころじゃない ✓ どうせわかってくれないよ ✓ チームはともかく組織は…

@TAKAKING22

我慢するか、辞めるか、変えるか by ユルゲン・アペロ(How to Change The World)

@TAKAKING22

我慢できないし辞めないなら 変えればよろしやん

Photo By Sudhamshu Hebbar(https://goo.gl/0H9nPI)

@TAKAKING22

Change Our World!!

Follow Me