見出し画像

リモートでもモブプログラミング文化が育った話

この記事は アジャイル開発 Advent Calendar 2020 の 20 日目です。

岡田です。なんちゃってスクラムマスターをしています。

現在私のいるチームは、基本リモートワークですが、モブプログラミング(ペアプログラミングも)が盛んです。
今日は、モブプロ文化がどうやって育っていったか、私が意識したこと、育ってどういう効果があったのか、をご紹介します。

なお、モブプロ文化が育ってきた+私がスクラムマスターになったのは、チームがリモートワークに移行したのと、ほぼ同時期のタイミングでした。
それも踏まえてご覧いただけると、良いかもしれません。(「リモートだから、チームとしての連帯感を出すことは無理だ」と諦めないでほしいです!)

概要

モブプロ自体については、Hunter Industries のイベント体験記事(@little_hand_s さんによる記事)に、わかりやすくまとまっています。
2019-01-14 Hunter Industriesの方のモブプロ体験会で教わった、本場のモブプロプラクティス

私たちのモブプロは、シンプルに「ドライバー」「ナビゲーター」という役割にわけておこなっています。ドライバーが Google Meets で画面共有をし、ナビゲーターがそれを見ながらナビゲートする、という形式です。

モブプロチャンスは、「難しいタスク」「慣れていないタスク」。成功体験をつくるのが大事。

モブプロの説明記事で、よく言われてるかもしれませんが、

・難しいタスク
・ドライバーが慣れていないタスク(バックエンドの人がフロントエンドのタスクをやってみる等)

をやるのがおすすめです。

そして、「モブでやるとこんなに速く・良いコードができるなんて!」という成功体験をつくれたことが、やはり今につながっていると思います。

ちなみに私たちのチームの一番最初のモブは、
バックエンドの人が、フロントエンドのちょっとした改修(1日もかからなそうな難易度のもの)をおこなう、というものでした。
ドライバーに対して、フロントエンド・エンジニア2人が、

「それを追加するなら○○っていうファイルですよ」
「それをやるなら、○○って方法が一番良いです」
「それなら、こう書いた方がスマートですよ」

とナビゲートすることで1時間で、タスクをほぼ完了させることができました。
モブで一緒にコーディングしていたので、プルリクのコードレビューが一瞬で終わったのは、言うまでもないですね。👍

初回が成功体験だったので、「おいおいモブプロってなんだよ。最高かよ」というムードができ、そのままモブは当たり前になっていきました。(正直、私もこんなに上手くいくと思ってなかったんですが。。。)

週のゴールと紐付けて、開催する。習慣化する。

週に1回、「モブプロ枠」というものを1時間とっています。
(これはチームのワーキング・アグリーメントにも書いています)

前回の記事で、週の目標を定めていると書きました。
週の開始のデイリーで、司会者はメンバーに「これらの目標の中で、モブプロをしたい人いますか?」と質問して、モブ枠を決めます。

必ず、週の目標に関連したモブプロをします。業務に関係しない息抜きイベント的なモブ枠はつくりません。
こうすることで、モブプロをすることは、日々の仕事の中の当たり前・必然的なことになりました。

個人的に、この時間は「私たちは目標を達成するために、全員で協力するんだ。それがチームなんだ」ということを、認識する時間にもなっているんじゃないかな〜〜、かもしれないかもな〜〜と思っています。(おおげさかも)

モブ文化が育って、起きた良い影響

ペアプロが育ったおかげで、下記のようなことが起こりました。

■ プログラミング以外でも、「モブ○○しよう」という動き
モブ募集要項作りしよう 等

■ わざわざ枠を決定しなくても、自然発生的にモブが起きるように
全員参加じゃないミニモブが、日々自然発生しています。

■ ペアプロも盛んになった

■ だれかの時間のかかってしまっているタスクは、モブプロで解決
たいていモブで解決できています。検査はデイリーでやっています。デイリーの記事も合わせてどうぞ。

■ 障害が起きたときも、Google Meets で集まってモブ解決

■ 属人化解消につながった
事実、「この言語は、○○さんしかできない」という状況が打開され、きちんと結果も出ました。👏

* * *

以上、モブプロ文化が育ったお話でした。まとめると、「モブプロが当たり前」に進化するまでには、成功体験と必然性をもたせるための仕組み設計が大事なのかな、と思います。(もちろん「モブプロとはどういうものか」を説明するために、社内向けに記事を書いたりもしましたが)

私たちのチームは、モブプロでさまざまな課題を解決してきました(あと純粋に楽しい!)。みなさまも楽しいモブライフを!

この記事は、この後のおまけをもって終了です。
私の TIPS が誰かの役に立てれば嬉しいです。それではまた!
岡田

P.S.
私にモブプロを教えてくださった @su_kun_1899 さんに大感謝です。

* * *

おまけ:モブしてよかったな〜って思うこと・ケース集

慣れていないリポジトリでのタスクを、1時間でほぼ完了させられた
これは何度も!

要件の勘違い解消
私よく勘違いするんですよね()

タイポの即時発見
タイポ1つで本番環境が壊れたケースもあるので、たかがタイポされどタイポ、です。

要件にかなうライブラリの選定相談
メンバーが悩んでいて「まだモブするまででもないかも...」となっていた状況でも、とりあえずモブったら課題解決しました。たった30分の相談で、数日詰まっていた課題を解決できました。👍
また、ライブラリのスマートな探し方もメンバー間で共有できました。

この記事が気に入ったらサポートをしてみませんか?