リモートワークにおけるペアワークのすゝめ

今年の夏に子どもが生まれ現在夫婦一緒に育休をとっています。（快く送り出してくれた会社に感謝！）
最初ははじめての子育てと家事でてんやわんやでしたが、現在はだいぶ落ち着き個人的な肌感で1.5人月ぐらいになり、以前よりはだいぶ余裕を持てた状態で日々を送っています。

育休前は約2年間、リモート環境下で自分の作業をしつつチームマネージメントをやっていました。
リモートワークはワークライフバランスが取りやすい、通勤の負荷がなくなる、集中できる環境を自分で整備できる、などのメリットがある反面、チームビルディングにおいてはコミュニケーションが希薄になりがちで、メンバー間のつながりをつくりチームパフォーマンスを向上させることが難しいなと悩む日々でした。
この課題感について自チームではペア・モブワークを推奨し、具体的に取り組んだことを紹介したいと思います。

## チームの課題感

自チームはいわゆる基盤チームと言われるようなチームで、ここ2年で3名から外国籍のメンバー含む8名に増えました。
チーム内のコミュニケーションは主に日本語なのですが、みんなが一つのプロジェクトに取り組んでいるわけではなく、常に並行して複数のプロジェクトが走っているような状態です。
普段のコミュニケーションはSlackのチャットやハドル、Zoomで行っており、チームで集う定例MTGはデイリーでスタンダップミーティング、週末に振り返りぐらいな感じです。
そのような状況で、個人が各種ツールを駆使し業務上必要なコミュニケーションはほとんどのケースで問題なく取れてはいるのですが、以下のような課題がありました。

- チームメンバーは技術的に優秀な人ばかりだが、個々が独立しており良くも悪くもお互いに与える影響が少ない
- 自分とメンバーはウィークリーで1on1をやっているので人となりや業務の状況は把握しているが、メンバー間は相手の時間を割くような質問（背景説明・理解が必要な場合など）やお互いの人柄の理解を深めるようなコミュニケーションは取りづらい印象
- チームにジョインした直後、雰囲気をつかめていない状況ではオフラインと比べて気軽にコミュニケーションを取りづらい
- 自身で時間をかけて調べたが人に聞けばすぐわかることだった、ということが何度かあった
- コミュニケーション以外でも、チーム内のメンバーでの作業の理解度が低くレビューの精度が低い、もしくは案件の理解と状況把握に時間がかかる

このような課題はすべて最初からあったわけではなく、時期を経てじわじわと湧いてきたイメージです。
これらを解決するためチームメンバー間のコミュニケーションを無理なく促進しつつ、多様なメンバーがいい相乗効果を発揮できるようにするにはどうすればいいのか、マネージメント初心者である自分にとってはなかなか難易度の高いものでした。。

そこでまずはチームとして積極的に一緒にいる時間をつくっていこうと考え、個別に顔を合わせる機会をつくることで単純接触効果的に信頼関係が構築されることを期待したものです。
その上で一つの問題やタスクに対してプロジェクトやチームで取り組み、解決に導くことで一体感が徐々に生まれてくるのではないかと考えました。

しかし、ただ定期的にメンバー間で顔を合わせる時間をつくるだけではおそらく何を話せばいいのか困惑するのではないかと思い、他のチームでも実施していたペアワークを積極的にやっていこうという共通の認識をチームで持つこととしました。

## チーム文化としてのペア・モブワークを推奨する

先に書いたとおりペアワークを推奨し、特に新しくジョインしたメンバーについてはメンター以外の人でも積極的にペアワークをやって大丈夫ということを繰り返し伝えました。
ペアワークをする際はできれば他のメンバーにもわかるようにして（Slackで目に付きやすいところで話しかける）乱入もしやすくなるようにします。
このためペアにこだわりがあるわけではなくモブでも状況に応じて使い分けます。

チームでは毎週末の振り返りでショートKPTを実施しており、ペア・モブワークで助かったことや学びはチームの振り返り等で共有し、他のメンバーにも極力伝わるようにしてもらうことでそのメンバー間だけでなくその後の広がりも生まれるように意識しました。
しかし人によっては時間を取られすぎてしまったり、煩わしく感じる場合など良いことばかりではないので、そういった不満やネガティブな意見は1on1等を通じて個別にケアしていきます。

このような散発的なペアワークの他に、定期的にペアワークする機会を設けた事例を紹介します。

### プロジェクト内で定期的にペア・モブワークを実施する

プロジェクト内のメンバーのドメイン知識やプロジェクト理解度や技術力には当然差がありますが、それをある一定以上に引き上げるためにもペア・モブワークは非常に有効ではないかと思います。

特に以下のような場合に積極的に実施しています。
- プロジェクトの立ち上げとき
- 新しいメンバーが参画したとき
- チケットが滞留していて一気に片付けたいとき
- QA期間

実施する時間帯はその後の作業時間を確保しやすく頭もまだクリアな1日の業務が始まる朝（午前中）がやりやすいように思いますが、プロジェクトによりけりだと思いますので、Kickoff時にみんなで合意した時間に実施してプロジェクトの状況を見て頻度や時間を調整するのが良いように思います。

実施する内容は自チームでは以下のようなものが多いです。
- 個人で詰まっていたり進捗が思わしくなかったりするタスク
- ブロッカーになっている課題をやっつける
- その他差し込みで入ってきたタスクなど
- QAのチケット処理（特にドメイン知識を要するものなど）

## チーム内で定期的にペアワークを実施する

次に、他のチームで取り組んでいたことになりますが、チーム内でランダムにペアを組み一緒にワークするというものを自チームでも取り入れてみました。
こちらもペア/モブにこだわりはありませんが、リモートワーク環境下では複数人よりも2名ではじめる方がやりやすかったように思います。

やり方としては以下のように進めました。
- 週の初めにSlackにbotがランダムな組み合わせを通知する
- 組み合わせが決まったらお互いのカレンダーの開いてるところにペアワークの予定を登録する
- ペアワークをやる内容はなんでもOK（以下、例）
	- 最初はお互いのことを知るのがおすすめ（経歴や趣味、使ってるキーボードなどざっくばらんに）
	- ワークする内容は都度相談して決めることが多い
	- その時詰まってることを一緒にやる（デバッグ等）
	- いつかやろうと思ってたことを一緒にやる（優先度は低いが重要なことなど）
	- リファクタリングを一緒にやる
- やったことはチームの振り返りで発表して他のメンバーにも共有して意見交換する

円滑に進められるように以下のような最低限の役割を設定しています。
- 組み合わせの左の人が予定を確認してカレンダー登録
- 組み合わせの右の人が振り返りでの発表者

特に「優先度は低いが重要なこと」をする機会は意識しないとなかなかやれないので非常に有益だと感じています。（例えばチームが良くなるための具体的なアクションなど）

ランダムな組み合わせをつくるbotのサンプルをつくってみたのでご参考までにどうぞ。（実際に自チームで使っているものとは別物です）
https://github.com/higuching/slack-random-pair-app/blob/main/main.js

## まとめ

積極的にペア・モブワークすることをチームとして推奨し、定期的にペアワークする機会を設けたことによる具体的な事例をご紹介しました。
リードタイム等計測できたわけではないため明確な効果はまだわかりませんが、各ペアが実践しているワーク内容やチーム内の雰囲気などから一定の効果はあったように思います。
やっていることはとても単純ですが、同じようなことで悩んでいる他の人にも何かが参考になれば幸いです。