下級エンジニアの綴

新しく発見したことを綴っていこうと思っています。夢はでっかく上級エンジニアになることです。

モブプロを初めて1ヶ月立ったので感じた事のまとめ

どうもやんてらです。私が開発チームのリーダーになって2ヶ月くらいになりました。

以前書いた記事から1ヶ月くらいたったので、久々の更新です。

今回はチームでモブプログラミングを初めて大体1ヶ月ほどたって感じた事を書いていきます。

はじめはモブプロではなくペアプロもどきをやっていたのですが、 私の時間がレビューコストとリーダーの業務とメンテ等で全て奪われて行き、更に開発もしないといけない状況になりました。 流石にこれは無理だと思ってやり始めたのがモブプログラミングです。

※参考書籍はモブプロをする時、めっちゃ勉強になりました。

モブプロを導入しようと思ったのは以下の点です。

  • 相互レビューしながら開発するのでレビューのコストがなくなるのでは?
  • 案件の認識を合わせるMTGがなくなって常に同期されるのでは?
  • 自分も開発に参加出来るのでは?
  • 個人的に一度やってみたかった←ココ重要!!

モブプロを行う時のルールは以下のとおりです

モブプロのルール

  • 毎朝、1日の予定を決める
    • 各メンバーに会議が入っている等を洗い出す
    • 開発を行う時間を決める
      • 自分たちのチームは10:00-18:00でモブプロをしてます
      • 残りの1時間は各々やりたいことをやってます。
  • 休憩
    • 自己判断で休憩をとるのが難しくなるので、強制的に休憩を取るタイミングを決める(1、2時間単位ぐらい
    • 大体10~20分くらい休む
    • 全員で考えて10分詰まったら強制的に休憩する
    • 17時を過ぎているとそのまま振り返りをして自習(解散)ということもある
  • 1日の振り返りは絶対にする
    • これをやらないと最適化されないのでよりチームに合ったやり方と見つけるために振り返りの時間を30分ほど取ってます
    • google driveなどで今日やった事やKPTの写真を取って成果の管理する。
  • PCは各々によって環境が違うので、ドライバー交代時はブランチをpullする。
  • 案件の見積もりはメンバー全員でする
    • issueは機能単位で切り、出来るだけMinimumにする
      • ここで言うMinimumとは見積もりが出来る且つ、少し余裕があるくらいの見積もりの大きさです
    • 追加や漏れがあった場合、別issueで行う
    • 案件で発生するissueをまとめるissueを作成する
  • 2週間のスプリントで区切り、見積もり含めて順調に案件が進んでいるかを見直すようにした。

モブプロのルールは毎日の振り返りを行い、毎日振り返りをして最適化した結果こうなりました。 個人的に見解ですがルールが変わらなくなれば、見積もりを含めてほぼ完璧に成果が出せるようになっていると思います。

やってみた結果(メリット)

  • プルリクを投げるとすぐにマージできるようになった。
  • 細かくcommit&pushをするようになった。
  • 互いが何をやっているかの共有会がなくなった。
  • 私も開発に参加出来る時間が増えた。
  • メンバー間のコミュニケーションがよくなった。
  • 周りから見て楽しそうに開発しているように見えているらしい。
  • 教育コストが減った。
  • 雰囲気が良さげだと別のチームが真似をしてモブプロに近いことを始める。
  • いらない会議を減らせた

やってみた結果(デメリット)

  • 正直めちゃくちゃしんどい。
  • サボる事は不可能になった。
    • 自分のタイミングで気分転換するのが難しいので、そこはいい感じに解決しないと問題になる。

まとめ

自分のチームでは基本的にモブプロ+アジャイルというスタンスでやってます。

基本的にMAX6.5時間ほどモブプロをして、後の1時間は各々でやりたい業務をするという流れにした結果、良い雰囲気で開発出来るようになったかなと思っています。(残りの0.5時間は休憩です

あと、余裕がなくなると愚痴が多くなりパフォーマンスが下がるので、出来るだけ余裕を持って作業出来るようにするとチームは良いパフォーマンスを発揮するのでは無いかなと思いました。

参考書籍

カイゼン・ジャーニー たった1人からはじめて、「越境」するチームをつくるまで

カイゼン・ジャーニー たった1人からはじめて、「越境」するチームをつくるまで

アジャイルサムライ−達人開発者への道−

アジャイルサムライ−達人開発者への道−