今年度の新入社員研修の講師をお願いされたので、ノリでモブプログラミングでやります!と宣言し、やってみた!
モブやったことなんて当然ない新入社員への説明資料
プロジェクト演習で”モブ”やってみよう
モブとは
- モブプログラミングのこと
- チーム全員が同時に、同じ場所で同じコンピュータを使って同じことをする。
- 全員で、1台のPCを使って、キーボードを入力する役(ドライバー)とそれ以外の人(ナビゲーター)がどういうコードを書くかを議論するスタイル。
つまり、“チーム”みんなで楽しく1つのものを作ろうということ
ドライバーの仕事
- ナビゲーターに指示されたことを実装すること
- ナビゲーターが指示したことを理解すること
- 指示されたことがよくわからなかったら質問をすること
- 指示されたこととは違うアプローチのアイデアがある場合でも議論なしに実装してはいけません
ナビゲーターの仕事
- 理解できるまで質問すること
- チームの理解度の水準を上げるために貢献すること
- 実装するための意見を言うだけが貢献ではありません、なぜそういう実装をすべきなのかわからなければどんどん質問してください。
- 他のメンバーの意見も聞くこと、たくさんのアプローチがあることを理解しましょう
メリット
- 今回の研修においてのメリット
- 全体のレベルの底上げができる(はず)
- チームみんなが同じレベルになることを目指す!
- 進捗報告いらない
- レビューいらない
- なのできちんと理解してから進めよう!
- 先輩がチームにいるときにどんどん質問しよう!
- 全体のレベルの底上げができる(はず)
デメリット
- 今回の研修においてのデメリット
- たぶんなし
- チームごとで進捗のばらつきが多少出るかも
ルール
1チームは3人
+先輩がランダムで自由に出入りします
ドライバーは15分で交代
PCでタイマーをセットしてから開始
作業開始前に前日のふりかえりと今日のやることを話し合おう
→研修中なのでふりかえりは他のチームにも交えて発表形式でやろう!
先輩は講師というよりみなさんより少しだけできるチームメンバーだと思いましょう。
実際にやってみた感想
まず前提として新入社員はたぶん全員文系出身の未経験者です。
なので、私はナビゲーターのフォローに努めました。理解度低いなという部分の説明を補足するのに必死でした。
んでやってみた感想ですが、、、
- 新入社員、先輩ともに満足度高め
- 一人で悩んでいやるよりははかどるし(どうせ裏で共有するし、、)、先輩も例年なら一人ひとりレビューする必要があって、レビュー待ち行列ができていたのだけれどそれがなくなりました
- モブに積極的に参加しないやついたらしい
- 説明に必死で気が付きませんでしたが、説明に必死になるよりも、メンバー全員から意見を絞り出させることに注力したほうが良かったかもしれません
- 上と絡めて、少し理解度高い人が終始負担が多いかも
- うーん、これは仕方ないけど、先輩社員や理解度高い人ばかり意見を言っているのはモブっぽくない気が、、、
- ドライバーの入れ替えをうっかり忘れることが多かった
- 疲れるのでどんどん変えるよう指示する必要があった
- 事前準備大事
- Git:ドライバーのPCと他のPC間でのプログラムの共有でぐだぐだになってしまった
- そもそも共有する必要はないのだけれどGitの勉強も兼ねてわざわざやっていた
- 大画面モニター:チーム数分足りなくて小さめのモニターのチームにいたときはツライ
- Git:ドライバーのPCと他のPC間でのプログラムの共有でぐだぐだになってしまった
次があったらこうしたい
- 大画面モニターをチーム数分用意する←必須
- 研修担当ではない先輩社員たちに多少は関わってもらいたい
- 進捗気にしない