ペアプロじゃない!ドクターメイト株式会社の「ペア」
ペアプロじゃない!ドクターメイト株式会社の「ペア」
「ペア」と聞くと「ドライバーとナビゲーターに分かれて……」という厳格な「ペアプロ」を想像しませんか? そして実際にやってみて、あるいはやったこともないのに「効果はあるかもしれないけど、拘束される・疲れる」というイメージを持っていませんか? この記事では、そんなペアプロのイメージを払拭……しません!!
この記事は「ゆるいペア」・「ペアを既定」にすることを紹介し、「ペア」のイメージを良くしようとするものです。
ぼくの所属するドクターメイト株式会社では「ゆるいペア」で「ペアを既定」にしています。そこで、どんな風に運用しているのかを紹介して、「面白そう、試してみたい」とか「そんなやりかたもあるんだ」などと思っていただければ嬉しいです。
「ゆるいペア」
冒頭にも書いたとおり、「ペアで作業」と言った途端に「ペアプロ」や「ダブルチェックでの本番リリース作業」のようなものをイメージされがちです。ぼくはこれをイメージしてしまうことに共感しつつも、極端なイメージだと思います。
なぜ、ぼくがそれをイメージすることに共感するかというと、「ペア」が既定ではない・日常ではない環境において、「ペア」は、たとえばプログラミングの特殊な形態であったり、慎重を期さないといけないという理由を要するなど、特別で気を遣うような類のものであるからで、自身の過去の経験に照らしてもそうイメージすることは仕方ないと思うからです。
一方で、これを極端なイメージだと思います。「からいものが好き」は「ココイチで20辛しか注文しちゃいけない」を意味しません。「ペアで作業」は、たとえば「 Google Meet は繋いでいるけど、一言も話さないし、別の作業をしている」でも良いと思いますし、「相手が何の作業をしているか把握しているなら「ペア」として十分」としても良いと思います。過度にペアの相手に合わせなくても良いと思います。
ぼくが言いたいのは、「厳格なペア」だけじゃなく、もっと「ゆるいペア」があっていい、ということです。
「ペアを既定」
「ペアを既定」にするとはどういうことか。文字通りですが、ソロではなくペアを既定にすることです。
何か作業があるとき、特定の誰かが (ソロで) やることになりませんか? 作業担当者を一人設定しますよね。
その考え方を変えてみましょう!
何か作業があるなら、それはペアでやります。ペアに割り当てます。基本的に作業はソロではなくペアでやるものです。……と、こう考えます。
ここだけ見るとおかしな考えと思うかもしれませんが、チームに対して大きなタスクを割り当てるのは普通ですよね? では末端の作業を一人ではなく二人に割り当てて大きな問題が出るでしょうか。少なくとも弊社では出ていません。 (これはソースコードの共同所有のような文化がないと成立しづらいところかもしれません)
二人でもいいものは二人にする。「ペアを既定」の選択肢にしてもいいということです。
ふたつを組み合わせると……
「ゆるいペア」と「ペアを既定」は組み合わせやすいアイデアです。厳格なペアを既定にするのは難しいかもしれませんが、ゆるいペアなら既定にできるかもしれませんよね。
……あるいは「ペアを既定」にするよう考えたとき、自然な発想として「ゆるいペア」が出てくるのかもしれません。
ドクターメイト株式会社での運用
もうすこし具体的な例として、弊社ドクターメイト株式会社での運用を説明します。弊社ではリモートワークと同期的な働き方を前提として、「ゆるいペア」と「ペアを既定」を組み合わせています。
一日の流れを見ていきます。
毎日、朝会でチームのメンバーが集まってペアを決めます。これはランダムに決めます。これも厳密ではなく、昨日と同じなら、ずらしたりもします。決め方もゆるいです。偏りすぎないことが大切です (あえて偏らせたこともあるのですが、それについてはまた機会があれば……) 。
次にペアごとの作業を決めます。作業はひとつずつピックするのではなく、作業のまとまりがあるので、まとめて取ります。「今日はこちらのペアはこちらのまとまりをやる」みたいな決め方です。
ここでチームは解散です! あとは各ペアで進め方を決めます。
ペアや作業の内容によって進め方は違います。「二人で Notion や FigJam を編集して設計!」もあれば、「 Live Share で繋いで同時編集!」のように、一つの作業を二人で進めることもあります。「二人で並行して別の作業をして、出来たら声をかけてコードレビューしてマージ」なんてのもあります。厳格にペアプロしてもいいですし、繋いでいるだけでもいいです。そのペアで自由に決めます。 (ここにも様々なパターンや Tips があるのですが……(略))
一日の終わりに、夕会でペアごとの進捗・成果を報告します。これでおしまいです。他のペアが作業を引き継げるように状況を伝えて、作業は手放します。
その形に至る流れ (想像)
ドクターメイトでの運用が現在そのような形になっているのは、ぼくが所属する以前からの経緯があるはずで、ぼくの知らないところではあるのですが、想像して経緯を書いてみます。
前提として「リモートワーク」で「同期的」という働き方があります。リモートワークで広い地域から採用できるメリットなどは受けつつも、タイムゾーンの違いやフレックスなどから完全に非同期な開発をしなければいけない……といった状態ではありません。要するに、オフィスではないけれど、従来のオフィスでの働き方に近いということです。
ただ、リモートワークを採用すると、オフィスでの働き方と同じものを実現するのは意外と難しいです。このあたりは新型コロナの流行もありましたし、共感してもらえると思います。
オフィスなら同じ部屋で複数人が作業する状況は普通です。しかし、リモートワークではどうでしょう。 Google Meet で 4 人が同じ部屋で作業すると、会話するのはやや難しいです。これは複数人が同時に発声した場合に聞きわけるのが難しいことからだと思います。「一人が話して他が聞く」を順番に……はできますが、 2 つのペアがそれぞれ会話するのは難しいです。
「ペアで作業する」はこの問題のシンプルな解決策です。人数を減らせばいい、それだけのことです。
また、コードレビュー文化はあるのですが、指摘が多くなったり読み取れない情報があると直接話したほうが良いです。こういうとき、同期的に働いているので話をすることはしやすいですが、「いっそ一緒に書いたほうが早い」もままあるわけです。
非同期に書いてコードレビューと、一緒に書いてレビューを軽くする、を行ったり来たりするうちに「ゆるいペア」 (両方の選択肢を取れる形式に) に落ち着いたのかなと思っています。
何が嬉しいのか
正直なところ、「これが嬉しい」というのを選べなくて困っています。
ただ「ゆるくてもいいのでペアを既定にしておく」ことは、様々な問題に対して、自然な改善を生む仕組みだと考えています。
想像しやすそうなところは「属人化やサイロ化の回避」で、その気がなくても共有する形になります。少なくとも他の一人は知っている、という状況は大きいです。コードレビューなどは一般的だと思うので、ある程度は共感いただけると思います。
画面共有などを通じて、わざわざ説明しようとも思わなかったことなど「暗黙知の共有」ができることもあります。知識共有という意味では「オンボーディングが楽になる」ということもあります。特別なプロセスは最小限で、あとはペアの「一緒にやる」割合を増やすような方法がとれます。
記事の冒頭で書いたペア (プロ) への抵抗感のひとつには「他人からの指摘や見られることへの心理的な抵抗感」がありそうですけど、これも自然と和らぎます。乱暴に言えば「慣れ」なので怒られそうですが……。「ライブコーディングへの抵抗がゼロになる」とか書くと「えぇ……」と引かれそうですけど、わりとできるようになると思います。毎日、当たり前のようにやっていると身構えるようなものではなくなります。 (ここは、あらゆるペアが大丈夫になっていくとまでは言えないです。たまたま弊社のメンバーがそこまでトゲトゲしくないだけという可能性はあります🙏)
質問・相談の相手がすぐ目の前に居るのは良いことです。特に「同じ作業を共有している」というのも相談のしやすさに直結していると思います。前提の説明をゼロからしなくてすみますし、どんな状態かを確認する手間も省けます。気軽に相談できることはハマり・詰まりの減少にも繋がります。監視というわけではありませんが、くたびれてぼんやり……みたいな状況も避けやすいです。
これは共感してもらえるか分からないのですが、リモートワークは「孤独感」が強いです。カジュアル面談などを通じて話を聞いていても、そう感じている方は多そうです。シンプルに「さみしい」と訴える方はあまりいないかもしれませんが、もっと広い意味での孤独感、自分と違う観点・考え方・能力などを持った「他者」との関わりが乏しくなることへの不満は多いです。他者は自身の成長の起点など多くの土台になるので、そういった刺激・経験の機会が欠けてしまうこともある種の「孤独感」かなと思っています。ペアを既定にしていると、この感覚は大きく改善されます。「一緒に開発している」という感覚が得られます。
最後に、この記事の下書きをチームメンバー (というかマネージャー) に見せて、もらった意外な意見として「立ち寄れる場がある」というものがありました。それぞれがソロでバラバラに作業していると話すのは難しいが、それぞれがペアで作業しているとその Meet にふらっと入れるのが良いとのことでした。思えば、プロダクトオーナーなんかも気軽に入ってきて喋っていたりします。雑談の場みたいなものを用意している職場も多いと思うのですが、そもペアのための「場」が必ずあるというのが、ひとつのコミュニケーションの起点になっているわけですね。
おわりに
「ゆるいペア」で「ペアを既定」にしたときの例や、良さみたいなものを書いてみました。
良さが伝わったかは分からないです。ぼくとしては、うまく書けなかったなあという気持ちです。
本文中でも触れたとおり、この記事はチームメンバーからの意見ももらって書きました (オレならもっとうまく書けるぞーと思われているかもしれませんが……)。ありがたいですね。チームっていいものですよ。
もし、興味があれば、カジュアル面談もやっていますので「 bouzuya さんの記事を見ました。ペアの話聞きたいです」とか声をかけていただければー。では、またー。
Discussion