Upgrade to Pro — share decks privately, control downloads, hide ads and more …

ペアプロの価値はコードを書くことだけじゃない

 ペアプロの価値はコードを書くことだけじゃない

Avatar for コドモン開発チーム

コドモン開発チーム

September 07, 2026

More Decks by コドモン開発チーム

Other Decks in Technology

Transcript

  1. 話す人 友野 敬大 ともの あきひろ 金融系SIer、シリーズAスタートアップを経て、2025年コドモン。 エンジニア 兼 エンジニアリングマネージャー。 好きなものは、型システムと柄シャツとワイン。現職までXPは未経験。

    所属 株式会社コドモン 「子どもを取り巻く環境をテクノロジーの力でよりよいものに」を ミッションに持つ保育・教育施設向けSaaSベンダー。 2021年ごろからXP導入。1日のうち、6〜7割ペアプロで開発。
  2. 生成AI活用で開発スピードは明確に上がった • ソロで生成AI活用を試してみる ◦ 保育施設(テナント)のオプション設定API ▪ ◦ PJで実績のないAWSサービスを使った開発 2,3日かかる見積もりが、0.5日で完了 •

    コードの生成だけ見るとペアプロでやる必要が ないかもしれない ◦ ◦ 早くできる感覚 → ”ペアをソロに” の モチベーション でも、それでいいのか? アウトプット量は 間違いなく増える…! 9
  3. before 生成AI:人間たちは会話をしていた • ペアプロの中心には会話がある ◦ 受入条件とスコープの確認 ◦ どうやって進めていくかの方針決め ◦ やるべきタスクの洗い出し

    ◦ タスクごとの実装(TDD) ◦ ペア交代時の引き継ぎ • ソロ × 生成AIには会話がない ◦ ペアプロは会話を通じて、小さく進めることで理解を深めていた 11
  4. AIと、人間のための仕様駆動開発 • 合意するには言語化が必要 ◦ 何を作るのか、なぜその設計なのか ◦ AIにこれらの文脈を渡す = 仕様駆動開発 ◦

    人間同士のペアプロは自然にやっていた • 仮説:仕様駆動開発とペアプロは相性が良いのでは ◦ ペアでのフェーズ毎に情報を更新していくためにIssueを使う ▪ もともとIssue中心に開発する文化があった ▪ AIに合わせて働き方を変えるのではなく、従来の働き方に AIを迎え入れた 16
  5. ペアのための仕様駆動開発ワークフロー • giro = GitHub Issue based Kiro ◦ ◦

    ◦ IssueとClaudeのコマンド/スキルの組み合わせ AIのアイデアを元に、ペアの会話・合意形成を促進するワークフロー Issue本文には現在の状態、コメントには意思決定を追跡可能な情報 <<Command>> <<Command>> <<Command>> <<Command>> /plan /tasks /impl /approve <<Issue>> 概要 受入条件 タスクリスト <<Issue comments>> 設計方針 意思決定ログ Q&Aサマリー 17
  6. /plan: 設計方針の合意と意思決定ログによる記録 AIがやること • • • • ペアがやること 概要・受入条件の確認 既存コードの調査

    ロバストネス分析によるイン タフェース設計 採用案/他候補と理由の記録 • AIによる設計方針のレビュー ◦ ◦ ◦ • 変更対象ファイル インタフェース定義 テストパターン 採用しない案まで確認する <<Command>> <<Command>> <<Command>> <<Command>> /plan /tasks /impl /approve <<Issue>> 概要 受入条件 タスクリスト <<Issue comments>> 設計方針 意思決定ログ Q&Aサマリー 18
  7. /tasks: タスク順序と粒度の合意 AIがやること • ペアがやること タスクリストの作成 • ◦ 受入テスト(E2E) ◦

    契約(インタフェース、モデル) ◦ 実装 ◦ 統合(受入テストのGreen確認) タスク粒度と順序の確認 ◦ ◦ 1タスクは1コミット粒度 =最小限の意味が通る単位 ロバストネス分析の1要素が目安 <<Command>> <<Command>> <<Command>> <<Command>> /plan /tasks /impl /approve <<Issue>> 概要 受入条件 タスクリスト <<Issue comments>> 設計方針 意思決定ログ Q&Aサマリー 19
  8. /impl: タスク単位での変更とその合意 AIがやること • ペアがやること タスクの実装 • ◦ TDD ◦

    タスクリストの上から1つずつ ◦ 人間がDiffを見やすいサイズで進 める 小さいDiffで実装内容の確認 ◦ タスクごとにTDDで進めるので そのテストケースも <<Command>> <<Command>> <<Command>> <<Command>> /plan /tasks /impl /approve <<Issue>> 概要 受入条件 タスクリスト <<Issue comments>> 設計方針 意思決定ログ Q&Aサマリー 20
  9. /approve: レビュー通過の合意 AIがやること • テストの実行 ◦ • ペアがやること • Greenになったらタスクリストに

    チェック レビュー通過の記録 • タスクを満足しているDiffがあ るか確認 変更がユニットテストを通過す るか確認 <<Command>> <<Command>> <<Command>> <<Command>> /plan /tasks /impl /approve <<Issue>> 概要 受入条件 タスクリスト <<Issue comments>> 設計方針 意思決定ログ Q&Aサマリー 21
  10. 判断①: 意思決定ポイントを意図的に増やす 1. 実装前の要件確認 2. 設計レビュー 3. タスクリスト確認 4. 1タスクごとのDiff確認

    • AIのアイデアをペアが判断するサイクルの回数を増やす ◦ フィードバックループを短くする ◦ 判断の回数は、成長機会の数 25
  11. 判断③: 1タスク=1つの意思決定の単位にする 1つの意思決定 = コミット1つ分 Diffが小さくなり 認知的降伏を防げる • 人間だけでなく、AIにもフレンドリー ◦

    1タスクごとにコンテキストクリアしてもIssueを読めば次に何をすべ きか分かる ▪ context rot / lost in the middle が起きにくい • インタフェースを先に確定する意味 ◦ ◦ 変更コストが高い箇所を優先して、ペアで合意する 契約が決まっていれば、実装はリファクタリングしやすい 27
  12. 仕様駆動開発とペアプロは、同じ場所で重なる 仕様駆動開発 AIに 「何を作るか」を 伝える仕組み • • ペアプロ 合意の記録 人間同士で

    「何を作るか」を 合意する場 AIが実装を担うほど、ペアがやるべきことは合意形成に集約される ペアプロはその合意形成の場として、会話を通じて価値を最大化する 32
  13. AI時代のペアプロ STEP 01 ペアで会話と意思決定の機会を増やす 生成AIに問うべきなのは ▼ ✗ どれだけ速くコードを書けるか STEP 02

    一人ひとりのベーススキルが上がる ▼ STEP 03 ◦ 意思決定の機会をどれだけ作れるか ◦ 考えを深める仕組みをどう作れるか チーム全体として速く・強くなる 33