世界を動かす技術を、日本語で。

AIは若手を輝かせるはずだった。なぜそれは主にベテランを強化するのか?

2025年9月21日原文(elma.dev)

概要

  • AIがコーディングを完全に置き換えるか という議論は尽きない問題
  • 現状では シニアエンジニア+AI の組み合わせが価値を生みやすい
  • AIの得意分野と苦手分野 を整理
  • ジュニア+AIの組み合わせには リスクや限界 が多い
  • AI活用の現実と今後の期待値調整 が必要

AIはコーディングを完全に取って代わるのか?

  • AIがコーディングを全て担う という話題は何度も議論されてきたテーマ
  • 初期の流れでは 「ジュニア+AIで十分」 という期待が広まった
  • 実際には AIの過大評価 もあり、現場の需要は 「シニア+AI」 へシフト
  • その理由を AIの得意・不得意 から考察

AIが得意な領域

  • ボイラープレートやスキャフォールディング の自動生成
  • 繰り返し作業の自動化
  • 異なる実装案の試行
  • 高速な反復によるバリデーション
  • 要件が明確な場合の迅速な機能追加
    • これらの恩恵を最大限に受けるのは シニアエンジニア
    • ジュニアの場合、価値に変換する難易度が高い

AIが苦手・リスクとなる領域

  • コードレビュー
    • AIは 本質的な推論ができず、エッジケース対応が弱い
    • AI生成コード は特にエッジケースで問題が多発
  • プロンプト作成
    • 良いプロンプト は対象に精通した人でないと作れない
    • 知識不足だと バグや問題の温床
  • アーキテクチャ設計
    • 堅牢な設計 は今も人間の領域
    • AIは全体設計が苦手 で技術的負債の原因に
  • コード品質管理
    • 適切な抽象化、設計パターンの適用、文脈理解 が難しい
  • セキュリティ
    • ジュニア+AI だと 脆弱性が増加
    • シニアなら 一定の注意力や認識がある
  • 間違った学習
    • 評価力がなければ AI生成コードの問題点を見抜けない
    • 組織内で 価値より損害を生むリスク

現状のまとめ

  • AIはシニアエンジニアの脅威ではなく、むしろ武器
  • ジュニアを責めるのではなく、 無理な期待でリスクに晒すべきでない

AI活用が有効な場面

  • 高速プロトタイピング :アイデア検証に最適
  • ルーチン作業の効率化 :繰り返し作業の自動化が最重要
  • マルチ分野連携 :知識の穴埋めや分野横断の提案
  • 簡易な機能テスト :単純・低リスクなコードの検証

AI導入時の現実と課題

  • AIが書いたコードは全て人間が読む必要
  • 完璧からは程遠い 現状
  • 意識や推論は模倣であり、決定論的ではない
  • テストもAI任せは危険 (自己検証の信頼性問題)

ソフトウェア業界の未熟さと今後

  • ジュニア+AI はコスト削減の誘惑と「AIが仕事を奪う」恐怖を生んだ
  • 他分野と比べても 専門性や役割分担が未成熟
    • 建築なら 設計者と職人 が分かれるが、ソフトウェアはまだ未分化
    • コスト削減優先 で人材消耗
  • AIは民主化どころか、エキスパートへの権限集中を加速
  • 期待と現実のギャップ が明確化
  • AIの未来には期待 しつつ、 短期的には現実的な期待値設定が必要

Hackerたちの意見

アマチュアが電動工具を使って救急病院に行くのと同じ理由で、経験豊富なプロはビジネスエンドの向きを知っている。AIは多くの点で電動工具みたいなもので、使い方を知らなければ、効率的に作業を手伝ってくれる。使い方を知っていれば、同じように助けてくれるよ。

電動工具は魔法のように大工にしてくれるわけじゃない。自分が持っているスキルをただ増幅させるだけだよ。

ずいぶん前にウィリアム・ギブソンのこの言葉を読んだことがある。「21世紀で最も重要なスキルは、Googleの検索バーに正しいキーワードを入力して、適切な答えを表示させることだ。」これが真実だと思う。多くの若手開発者は、GeminiPiTiにJavaScriptのコードを書いてもらうけど、私はその背後にあるasync/awaitのモデルやJavaScriptエンジンの実行モデルについて説明を求める。ピアノを学ぶときも似たような問題がある。すぐにショパンを弾きたいと思うけど、本当の道は彼の作品にある技を特定して、名前を付けて、学ぶことなんだ。

本当の「AIリテラシー」は、ミーム的な意味でのプロンプトエンジニアリングじゃなくて、プロンプト(と出力)が実際に意味のあるものに繋がるように概念的な足場を築くことだと感じる。

同意するよ。扱いたいテーマの「言語」やキーワードを知っておく必要がある。全くの初心者だと、AIはあまり役に立たないよ。「A、B、Cがあるとして、Dをしたい」とAIに伝えないと、理解して解決策を見つけるのは難しい。AIはたくさんの情報を持ってるけど、それをクリエイティブに使うのは苦手なんだよね。

その通り。LLMを使って生産的になるのは、良いGoogle検索を書くスキルに似てる。だけど、まだまだ多くの人が適切なGoogle検索の仕方を知らないんだよね…。

ピアノの真の道は、テクニックを学ぶことじゃない。最も基本的な曲から始めて、徐々に難しい曲に進んでいくんだ。俺が知ってるみんなは、26年間の演奏の中でそうやってきた。テクニックは実際の音楽を安っぽくする。ショパンにも初心者向けの曲があって、うちのピアノスタジオでは多くの1年生が「雨だれの前奏曲」や「ホ短調の前奏曲」、バッハのような他の初心者向けの曲を弾いてたよ。

まあ、ショパンを弾きたいだけと、今のレベルで何でも弾けるようにピアノをしっかり学びたいってのは大きな違いがあるよね。手をどこに置いて、どの鍵をいつ押すかを覚えただけで、全体のピアノ曲を機械的に弾ける人もいるし。

AIは「狭い」ギャップを埋めている。シニアの場合、これらは以下のようなものだ: - 理解しているがまだマスターしていない技術。AIは専門家しか知らない実装の詳細を手助けする。 - 長いコーディング作業に時間がない。AIは迅速な実装や自動テストを手助けする。 - よく理解されている問題に対処する技術を学ぶ時間がない。AIは素早いイントロやデモ、学習者の誤解を解決するのに役立つ。要するに、シニアにとっては生産性に影響を与える。ジュニアの場合もAIはギャップを埋めるけど、シニアとは違って、ギャップが広くて深いからAIは得意じゃない。 - ビジネスドメインの問題を理解する。AIは助けるけど、あまり役に立たない。 - 組織の仕組みを理解する。ここではAIはあまり役に立たない。 - 使用する技術を学ぶ。AIは助けるけど、特定の組織の文脈やビジネスドメインにおいてジュニアを導く方法を知らない。要するに、助けにはなるけど、ギャップが広くて埋めるのが難しいから、あまり役立たない。

AIは、すでに自分の進むべき方向を知っている人たちを加速させている一方で、初学者にはこれまでと同じ人間のガイダンスが必要な状態を残している気がする。

私の経験では、AIは知らない分野について知りたいことがあるときのウィキペディアやスタックオーバーフローの強化版みたいなものだよ。良い説明があって、例やシナリオを求めると、理解できていないことを教えてくれる。ただ、その分野の基本的な概念を知っているときに限って、AIは生産的になるんだ。これはコーディングだけじゃなくて、科学や人文科学の他の分野にも当てはまるよ。

2021年のAIコーディングの始まりを振り返ると、AIがジュニアにとって悪い影響を与えると観察している人たちがいた。彼らは良い補完と悪い補完を区別できないからね。驚くことじゃない、ずっとこうだった。興味深いスレッドを編集したよ: https://news.ycombinator.com/item?id=27678424 編集: 私が話していたコメントの例: https://news.ycombinator.com/item?id=27677690

Hacker Newsで議論の続きを見る