LoginSignup
8
2

More than 5 years have passed since last update.

開発環境の構築をモブプログラミングを用いてやってみた話

Posted at

tl;dr

  • 先に言うと、構築は完了できませんでした
    • ヤマもオチもないです
  • 構築に用いる技術の話はしません

まえがき

  • 開発環境をプライベートクラウド上に構築しようとした時の話です
  • 構築する際以下の要素が課題になりそうだった
    • ansible周りの技術ノウハウ
    • Docker周りの業務ノウハウ
    • 環境構築に必要なネットワーク周りのノウハウ
  • メンバーは4人
  • モブプログラミングを実際にやってみた - Qiita とか見つつ、以下の理由からモブプログラミングを採用した
    • チーム内に各課題の詳細をわかっている人がいなかった
    • 一人でやるより知恵を出し合った方がスムーズに進みそう
    • 作業で得た知見の共有コストを減らしたい

実際やってみた

共通ルール

  • 定時前に1日1時間毎日やる
  • モブプログラミングより案件優先
  • 参加者が少ない場合はスキップ
  • 会議室等でなく、ドライバーの自席付近に集まっておこなう
  • モブプログラミング中のチャットは毎回slackの新規スレッドを立ててそこで会話する
    • 環境構築のスレッドと混ぜると後から見た際ノイズになるため
    • 毎回立て直すことで「この問題モブプログラミング3回目で参考にしたURLに解決方法書いてあったな」といったものを見つけやすくする
      • 実際これは多々あった

序盤ルール&反省点

  • 1つのデスクトップPCをドライバ交代ごとにローテーションして使用する
    • 不慣れなキーボードやターミナルでのストレスによる効率の悪さが目に見えてわかった
  • 15分でドライバーをローテーションする
    • 作業が慣れてくる前に交代してしまうので進捗ゼロになることもあった
  • モブプロ中のわからなかったことはその場ではなく終わってから質問する
    • 理解していないまま作業を続行しても共有にならなかったりする
    • 質問事項を忘れてしまう

中盤以降のルール

  • 自分のPCを使用する
    • tmuxでセッション共有する
      • ドライバーのローテーションがスムーズになる
      • コマンドを斜め読みしつつWebブラウザで解決方法探すとかがやりやすくなった
  • 30分でドライバーをローテーションする
    • 60分だとドライバーが疲弊してしまう
    • 30分がちょうどよかった
  • モブプロ中にわからないことがあればその場で質問する
  • モブプロ開始前、終了後にブリーフィングをする
    • 開始前
      • 昨日どこで終わったのか
      • 今日まずどこから手をつけるのか
    • 終了後
      • 今日なにをしたのか
      • モブプロに対するKPTを実施
      • 明日のモブプロ開始前までに解決しておいた方がいい課題がないか

突然のまとめ&感想

  • ある程度まで構築ができていたが、案件優先でメンバーの集まりが悪くなりモブプログラミングでの構築は断念することに。。。
  • チャット(slackのスレッド)の利用方法, tmuxでの画面共有, ブリーフィングはとても効果があった
  • 自分自身としては環境周りの知見を得ることができた
  • 知見の共有しつつ作業するのにモブプロはとても向いてると思うのでチャンスを見つけて再挑戦したい
  • ISUCON参加とかこんな感じなのかなと思った

おわりに

  • 明日は @naka_kyon さんになります。おたのしみに
  • \( ⁰⊖⁰)/ Let's モブモブ!!
8
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
8
2