僕が最近携わった案件ではペアプログラミング(以下、ペアプロ)を導入しています。
これまでペアプロをしたことがなかった僕が感じた、ペアプロをして良かった点と気になった点をまとめました。
筆者がペアプロをやってみて
- 良かったと思ったこと
- 気になったこと
ペアプロの概要
やり方
ペアプロでは2人1組で、実際にコーディングをするハンドラーとどのようなコーディングをするか指示を出すナビゲーターに分かれてコーディングをしていきます。
ハンドラーはロボットのようにナビゲーターの指示どおりに動くわけではなく、どのようなコーディングすれば良いか分かる場合は自分が考えたとおりにコーディングします。
ハンドラーとナビゲーターで意見が分かれた場合は話し合いをしてどのようにコーディングするか決定します。
一定の時間が経過したり、キリの良いところまでコーディングできたらドライバーとナビゲーターを交代します。
利用したツール
僕が利用したツールは以下になります。
- Zoom、Webex(Web会議ツール)
- Slack(チャットツール)
- VSCode(エディタ)
VScodeにはLive Shareという機能があり、これによりリモートワークであっても1つのソースコードを2人同時に編集できました。
良かったこと
疑問点をすぐに解消できる
通常1人でコーディングする場合、分からないことがあれば1人で調べるか、分かりそうな人に聞きます。
ペアプロでは分からないことがあっても、どちらかが知っていればコーディングを進めることができました。
たとえ調べることになっても2人で調査するので時短につながりました。
間違ったコーディングを事前に防ぐことができる
どんなに注意深く仕様を把握し、コーディングしようとしても勘違いすることは誰にでもあるかと思います。
2人で改めて仕様を確認しコーディングしていけば、情報共有ができ、作業ミスを事前に防ぐことができます。
スキルトランスファーがスムーズに進む
僕が対応している案件では、実装箇所が得意なメンバーとそこまで得意ではないメンバーがペアになっていました。
Reactでフロント画面を実装する際に、フロントエンドエンジニアとバックエンドエンジニアが組む。
エンジニアのコーディングスキルは自ら手を動かしてコーディングをすることで成長します。
案件を通して得意なメンバーに教えてもらえることは、とても大切なことです。
実装案がいくつか挙がった場合も最適なコードを選択して実装できます。
得意としない分野のコーディングをしたり、1つのタスクに2人アサインすると一見効率が悪いように思えます。
しかし、1人のエンジニアが様々な経験を積むことができるので、今後対応できる範囲や引き継ぎなどについて長期的に考えると、プロジェクトとしてもエンジニア自身にとってもプラスと考えることができました。
ペアプロはチームの成長につながります。
リモートワークでも孤独感がなくなる
一人暮らしでリモートワークをする際に感じるのが孤独感です。
僕も以前は、一度も人と話さない日々が続いたことがありました。
人間は本来しゃべりたい生き物とのことですが、リモートワークでは必要最低限の会話しかできない方も多いのではないでしょうか?
ペアプロでは常にWeb会議を繋いでおくので、案件の話はもちろん、日常の何気ない会話も話すことができます。
そのためリモートワーク特有の孤独感は感じませんでした。
ペアプロ以外でも朝会や夕会をしていたのも孤独感を感じなかった理由だと言えます。
気になったこと
メンバーのスキルレベルに差がある場合は片方が退屈
メンバー2人の間にコーディングスキルレベルの差がある場合は片方は教えるだけになる可能性が高いです。
スキルレベルの高いメンバーは「相手やチームを育てる」「教えることで知識の再確認をする」ことを意識して取り組む必要があります。
プレッシャーを感じる
ドライバーはナビゲーターが見ている中でコーディングしなくてはいけません。
そのため「早く実装しないと!」「待たせたくない!」などと思うこともありました。
ペアプロをやり始めた頃だったり、初めて組む相手のときは上記のような思いを抱いていましたが、ペアプロに慣れると心に余裕が生まれ、堂々と実装できるようになっていました。
日や時間帯によりネット回線が重たいときもあったため、自分と相手で表示される画面が少しずれるときももあり、話が噛み合わないときもありました
ネットワークの環境がある程度整っている必要がある
ペアプロでWeb会議をする際は高速なネットワークが必要になります。
僕が住んでいる物件ではオーナーさんが用意してくれた無料のwi-fiを利用することができるのですが、この無料wi-fiは回線の質があまり高くないため、Web会議で相手の声が聞こえなかったり、共有されている画面が動かないことが多々ありました。
また、持ち運びに便利なモバイルルーターもありますが、通信用量の制限がついている場合は容量が足りなくなる場合もありますので注意が必要です。
僕は楽天ひかりを利用しています。光回線なので通信容量の制限もなく、品質も高いので満足しています。
まとめ
ペアプロでは以下のとおり、良かったこと&気になったことがありました。
良いところ | 気になったところ |
---|---|
疑問点をすぐに解消できる スキルトランスファーがスムーズに進む 間違ったコーディングを事前に防ぐことができる リモートワークでも孤独感がなくなる | メンバーのスキルレベルに差がある場合は片方が退屈 プレッシャーを感じる ネットワークの環境がある程度整っている必要があるメリット |
最後までご覧いただきありがとうございました。
コメント