EXPLORINEER
ja

Hatena

人間が時間を使うべきところはどこか

ソフトウェア初登場 135ポイント


AI がコードを書く時代に、人間はレビューにどれだけ時間を使うべきかを考えた個人メモです。機械、LLM、人間の役割を分けて、人間の時間をどこに使うかを話しています。

コードを書く仕事から、レビューする仕事へ

この 1 年で、筆者は自分でコードを書くことがほとんどなくなりました。代わりに増えたのがレビューです。同僚の PR だけでなく、AI が書いた plan ファイルを読むことも多いそうです。AI でコードを書くのが簡単になり、PR の数もコードの行数も増えました。そのため、人間が同時にさばける仕事の量が、開発の速さの上限になっています。

AI の段階と、ボトルネックの移動

記事では、Simon Willison のブログや The Five Levels という記事を引用しています。生成されたコードはレビューが必要なので、ボトルネックは「どれだけ速くレビューできるか」になるという考えです。The Five Levels では、人間が差分をひたすら見る段階(Level 3)で頭打ちになる人が多いとされ、Level 4 では人間が spec を書き、計画をレビューする側に回るとされています。

プログラムに任せられるところは任せる

筆者は、人間も LLM も判断しなくてよいものは、プログラムで自動判定する方がよいと考えています。時間の価値は、人間が一番高く、次に LLM、機械が一番安いからです。筆者の職場では conftest(設定ファイルを検査するツール)を使い、レビューで毎回出る指摘をポリシーにしています。Claude Code チームの例では、Low リスクなら自動チェックが通れば人間の承認は不要、Medium は 1 人、High は 2 人と、変更のリスクで承認の数を変えています。

数字で見るポイント

  • Claude Code チームの承認ルール:Low は承認なし(自動チェックのみ)、Medium は 1 人、High は 2 人
  • チェックは 2 種類:テストや linter など、速くて安い「computational」と、AI レビューなど、意味は判断できるが遅くて結果がぶれる「inferential」
  • インフラでは terraform plan や kubectl diff の差分が構造化されていて、リスク判定をプログラムで行える可能性がある

なぜ大事なのか

AI が多くのコードを書く今、人間のレビュー時間は開発全体の速さを決めます。すべてを人間が見るのは限界があります。何を機械に任せ、何を人間が見るかを決めることで、人間の時間を本当に大事な判断に使えるようになります。さらに、コードそのものより plan を読む方が効率的だという考えもあります。筆者の言葉を借りると、悪い 1 行のコードは 1 行の問題ですが、悪い plan の 1 行は何百行もの悪いコードにつながるからです。

用語解説

PR
Pull Request の略。変更内容をまとめて、他の人にレビューを頼む仕組みです。
plan ファイル
AI にコードを書かせる前に、作業の計画を書いたファイルです。
conftest
設定ファイルがルール(ポリシー)に合っているかを自動で調べるツールです。
linter
コードの書き方のミスや決まりから外れた部分を、自動で見つけるツールです。
terraform plan
Terraform でインフラを変えるとき、どこがどう変わるかを事前に示す差分です。

出典: Hatenaで原文を読む ↗

この記事は原文をもとにAIがやさしい言葉で書き直した解説です。事実関係は原文をご確認ください。