🧠

言うは易く行うは難し──Codexと歩いたAIコーディング奮闘記

に公開

プロローグ:言うのは簡単だった

AI と組んで開発すれば「爆速でPRが出せる」と豪語したのは、ほかでもない自分だった。軽く「Codexに任せれば余裕でしょ」と言った瞬間、仲間の視線が鋭く突き刺さったのを今でも覚えている。言うは易く行うは難し。その格言を、これほど骨身に染みて理解するとは思わなかった。

プロジェクトは社内ツールの改善。期限はタイト、要件は曖昧、そして私は AI とのペアプロ初心者。しかも「レビュー可能なPRを必ず出させること」という暗黙のミッション付き。自分が放った大きな言葉に責任を持たねばと、程よい緊張感を抱えたまま走り出した。

ステージ1:Codexへの指示は短く

最初に思い知ったのは、Codex への指示は短くまとめないと途端に迷子になるということ。長文で状況を説明しようとすると、返ってくるのは斜め上のコード。質問を重ねるたびに、自分の説明力が試されているのだと痛感した。

そこで方針転換。指示は3行まで、要点だけをカッチリと伝える。例えば:

  1. 不具合の現象を一言
  2. 修正の方針を一言
  3. 出力してほしい成果物を一言

この簡潔なルールを徹底したら、Codex の精度がぐっと上がった。AI に投げかける言葉は洗練させるほど力を発揮する。AI と会話するというより、互いの認識を正しく同期する作業に近い。

ステージ2:AI生成コードの現実

とはいえ、AI が吐き出すコードは常に完璧ではない。特に複雑な状態管理や、過去の仕様変更が積み上がった部分は、大体ズレる。期待していた流れと異なる動きに、何度も首をひねることになった。

ここで大事なのは、コードレビューを受ける前に自分でレビューする癖をつけること。AI が生成した差分を読み、テストを回し、リファクタできる部分は自分の手で整える。要は「レビュー可能な PR を出させる」のは、AI ではなく自分だという覚悟だ。

私は以下のチェックリストを決めて、PR 作成前に毎回確認するようにした:

  • 差分は最小限か
  • テストや linters は通っているか
  • 仕様をドキュメント化したか
  • コメントやログは必要十分か

このチェックリストは、レビュー前の最終防衛線だ。怠ると、そのまま自分の信用が削られてしまう。

ステージ3:レビュー可能なPRへの執念

チームにレビューをお願いしたとき、「差分多すぎて読めない」「論理が飛躍している」と返されると心が折れる。そんな経験を繰り返すうち、私は AI と自分の役割分担を明確にした。AI にはコード生成と補助的なテストの雛形を任せ、自分は仕様整理と最終確認に集中する。

その結果、PR の説明文が格段に充実した。「背景」「変更内容」「テスト結果」「懸念点」の4セクションをテンプレ化し、レビューアが迷わないように道を敷く。チーム全体が同じ視点を持てるよう、ひとつひとつの情報を丁寧に並べた。

レビューアから「読みやすい」「助かった」と言われたときの達成感は格別だ。AI の力を借りたとはいえ、最後にレビュー可能な形に仕上げる責任は自分にある。そこを怠けると、結局「AI に任せると雑になる」という悪評を振りまくことになる。

ステージ4:行き詰まりとの向き合い方

もちろん、順風満帆なわけではなかった。Codex が妙に頑固で、同じバグを何度修正しても復活させることもある。そんなときは、いったん会話をリセットし、指示の粒度を変えてみる。あるいは、自分でコードを書いてから差分レビューだけを頼む。

何度も手が止まりそうになりながらも、行き詰まりの原因を言語化し、タスクを小さく切り、再び AI にお願いする。焦って大きく動くよりも、小さな改善を積み重ねるほうが前に進めると学んだ。

ステージ5:チームへの共有と導入

AI ペアプロの成果をチームに共有するときは、体験談を中心にした勉強会を開いた。以下のようなポイントをまとめ、ナレッジベースに残した:

  • Codex への指示は 3 行以内で要点を伝える
  • PR は AI 任せにせず、自分で最終整形する
  • テストとドキュメントの自動生成は AI に一度任せ、必ず目視確認する
  • 複数タスクを並行させない。1 つの PR に 1 つの目的

失敗談と成功例をセットで語ることで、チームの期待値を適正化した。結果的に、AI の導入に前向きなメンバーが増え、コードレビューのやり取りも円滑になった。

エピローグ:習慣を味方につける

AI コーディングは、覚悟を持って臨む「修行」に近い。手を抜けば抜いただけ跳ね返ってくるし、丁寧に付き合えば確実に成果が返ってくる。言うは易く行うは難し――だけど、行った先には確かな経験値が残る。

今でも私は、Codex に短い指示を送りながら、レビュー可能な PR を着実に積み上げている。もしこれから AI とのペアプロに挑戦するなら、制約条件を明確にし、目的を小さく刻み、自分の手で完成形に整える習慣を身につけてほしい。その姿勢こそ、AI 時代のエンジニアに求められる資質だと思う。

「負けて覚える喧嘩の作法」

Discussion