【ITニュース解説】The Death of Expertise (And How To Stay Relevant)
2025年09月30日に「Dev.to」が公開したITニュース「The Death of Expertise (And How To Stay Relevant)」について初心者にもわかりやすく解説しています。
ITニュース概要
AIの進化で専門知識の価値は低下し、従来の知識蓄積だけでは不十分になった。これからのエンジニアは、AIが生成する情報から最適な選択をし、システム全体を考慮して「適切な判断」を下す力が不可欠となる。AIを単なる知識源とせず、自身の判断力を磨き、活用することが成功への道だ。
ITニュース解説
今日のIT業界において、人工知能(AI)の進化は、私たちが長年培ってきた「専門知識」の価値を根本から変えつつある。これは、システムエンジニアを目指す皆さんにとっても、非常に重要な変化である。かつては開発者の聖典であったStack Overflowが、質問への回答速度でChatGPTに追い抜かれつつある現状は、この変化を象徴している。AIは、自然言語の指示からコード全体を生成し、ジュニア開発者でもベテランが何週間もかかっていた機能開発を数日で完了させる。デザインパターン、アルゴリズム、フレームワークの内部構造といった、これまで時間をかけて習得してきた専門知識は、今や適切なプロンプトを与えれば誰でも瞬時に引き出せる情報となった。あなたの専門知識はもはや特別ではなく、AIがより容易にアクセスできる「キャッシュされた情報」と化しているのだ。これは未来の脅威ではなく、既に起きている現実である。もし専門知識を競争優位性として堅持し続けているなら、既に遅れを取っていることになる。
何十年もの間、テック業界でのキャリア成功への道は明確だった。それは、特定の知識を深く習得し、かけがえのない存在となり、昇進することである。例えば、Reactを深く学び、システム設計を習得し、アルゴリズムの複雑性を記憶する。専門知識を築き、影響力を高め、キャリアの安定を確保する。しかし、この方法はもはや時代遅れだ。問題はAIがあなたより多くのことを知っていることではない。問題は、AIがあなたが知っていることへのアクセスを民主化した点にある。AIを活用して分散システムアーキテクチャを理解するジュニア開発者は、助けが必要だったからといって価値が低いわけではない。むしろ、ベテランが彼らのアプローチの問題点を説明している間に、実際に機能をリリースした点で、より価値があると言える。専門知識はかつて希少なものだったが、今や豊富に存在する。そして、何かが希少なものから豊富なものへと変わると、その経済的価値は暴落する。現在パニックに陥っている開発者は、知識があることを自己のアイデンティティの全てとしてきた人々である。彼らは、あらゆる質問に答えるような存在であり、部屋で最も賢い人物であることから自己の価値を見出してきた。AIは、その「部屋」を無限に広げ、彼らはもはや最も賢い人物ではなくなったのだ。
では、専門知識が失われつつある時代に、何がその代わりとなるのか。それは「判断力」である。適切なパターンを思い出す能力ではなく、いつそれを適用すべきかを知る能力。APIドキュメントを記憶することではなく、異なるアプローチ間のトレードオフを理解する能力。すべての答えを知ることではなく、どの質問をすべきかを知る能力。多くの開発者が見落としているのはこの変化だ。彼らはAIが知識を置き換えると考えて、より多くのことを知ろうとする。しかし、AIは知識そのもので競争しているのではなく、情報検索の速度で競争している。人間が大規模言語モデル(LLM)よりも多くを記憶することはできない。しかし、AIを凌駕して考えることはできる。AIはキャッシュ層の実装方法を教えることができるが、あなたのアプリケーションにそれが実際に必要なのかどうかは判断できない。複雑なマイクロサービスアーキテクチャを生成できるが、チームの規模や制約を考慮すると、なぜモノリスの方が良いのかは説明できない。AIはあなたより速くコードを書けるが、そもそもどのようなコードが存在すべきかを決定することはできないのだ。
実践における判断力は、具体的にどのようなものだろうか。例えば、ジュニア開発者がAIを使って新機能のコードを生成し、技術的に正しく、ベストプラクティスに従い、適切なテストカバレッジを持つコードをリリースしたとしよう。これに対し、判断力を持つシニア開発者は、同じAI生成コードを見て、以下のような問いを投げかける。このコードは、ユーザーの表面的な要求ではなく、実際のユーザーの問題を解決しているか。トラフィックが10倍に増加したとき、どうなるのか。既存のシステムの前提とどのように相互作用するのか。これにより、将来的にどのようなメンテナンス負担を負うことになるのか。これは、実現可能な最もシンプルな解決策なのか。AIはジュニア開発者に実行速度をもたらしたが、判断力はシニア開発者により価値のある「何を構築しないか」を決定する能力を与えた。これが、専門知識が失われつつある一方で、判断力はそうではない理由である。専門知識はパターンを知ることだが、判断力はパターンが適用されない時を知ることなのだ。
この新しい時代に通用するスキルセットを身につけるには、知識の蓄積に最適化するのをやめ、判断力の開発に最適化する必要がある。コンポーネント単位ではなく、システム全体として物事を考えることを学ぶべきだ。AIは個々の機能を最適化できるが、あなたはその機能がシステム全体にどのように影響するかを理解する必要がある。例えば、このデータベースの変更がAPIのパフォーマンスにどう影響するか、この機能がユーザー行動パターンにどう影響するか、このアーキテクチャ上の決定が将来の可能性をどう制約するか、といったことだ。AIツールは、コードを生成するためだけではなく、あなたのアーキテクチャ上の決定を厳しく検証するために利用すると良い。AIにあなたのアプローチを批判させ、エッジケースを特定させ、潜在的な失敗モードを説明させるのだ。目標は答えを得ることではなく、トレードオフを評価する能力を磨くことにある。また、複雑さに対する「美意識」を育むことも重要である。ジュニア開発者は機能を追加するが、シニア開発者はそれを取り除く。AIは無限の複雑さを生成できる。なぜなら、シンプルさへの内在的な好みが無いからだ。あなたはコードに対する美的判断力を養う必要がある。それは、ある解決策を見て、それが過剰な概念的オーバーヘッドを抱えているかどうかを感じ取る能力だ。さらに、様々な領域にわたるパターン認識を構築することも求められる。AIはコードで訓練されているが、あなたはビジネス、心理学、組織ダイナミクス、プロダクト思考といった分野で訓練されるべきだ。最良の技術的決定は、多くの場合、非技術的な制約を理解することから生まれる。そして、要件を深く探求する能力を学ぶこと。多くのプロジェクトは、悪いコードが原因で失敗するのではなく、間違ったものを作ったために失敗する。AIは与えられた要件を喜んで実装するだろう。しかしあなたは、意味をなさない要件に対して異議を唱え、明確化のための質問をし、問題を再構築する本能を養う必要がある。
未来は「開発者 対 AI」ではない。「開発者 + AI 対 複雑性」という構図になる。開発者たちは大きく二つの陣営に分かれている。AIツールを使うことを拒否し、全てを手作業で行う「抵抗者」たちは、Stack Overflowを「本当のプログラマーは自分で解決する」と言って拒否した開発者たちに似ている。彼らはスキルが高いわけではなく、単に遅いだけだ。一方、AIを魔法の箱のように扱い、要件を与えればコードが返ってくるという考えで、それをそのままリリースする開発者たちは、速いが、リリースするコードに対する判断力がなく、AIの速度で技術的負債を積み上げている。より興味深い第三の選択肢は、AIを判断力の代替ではなく、その増幅器として使うことだ。複雑なシステムに取り組む際、AIを使い、異なるアーキテクチャのアプローチを迅速に探索する。これは特定の選択肢を選ぶためではなく、自分の思考を検証するためだ。例えば、AIに三つの異なる実装を生成させ、それらのトレードオフを自分で分析する。コードレビューにおいては、AIにフォーマット、単純なバグ、セキュリティパターンといった明らかな問題の検出を任せる。そして、自分の認知的なエネルギーは、AIが評価できない部分に集中させる。例えば、この変更がシステムの保守性を高めるか、抽象化が適切なレベルか、私たちが正しい問題を解決しているか、といった点だ。コード説明ツールは、構文を理解するためだけでなく、自分のメンタルモデルを検証するために使う。「このコードはこう機能すると考えているが、何か見落としているか」とAIに問いかけるのだ。
このような変化に対応することは、新しいフレームワークを学ぶよりも難しい。それは、これまでに蓄積してきた専門知識が、思っていたほど価値がないと認めることを要求するからだ。アルゴリズムやデザインパターンを記憶するために費やした年月が、あなたが信じていたほどの優位性を与えていなかったと認めることでもある。多くの開発者にとって、これは自尊心を打ち砕くことかもしれない。私たちは技術のエキスパートであるというアイデンティティを築き上げてきた。他人が質問にやってくることに喜びを感じ、深い知識からくる地位を享受してきた。しかし、その地位は失われつつある。だが、その代わりに現れているのは、不確実性の中で良い決定を下す能力だ。何を作り、何をスキップするかを知るスキル。AIが生成したコードを見て、それが十分に良いものか、それとも根本的に欠陥があるのかを判断する力。これらのスキルは、知識の検索に関するものではなく、「知恵」の開発に関するものであるため、自動化することはできない。そして知恵は、経験、失敗、そして反省からのみ得られるものだ。
この変化は、キャリアの初期にある皆さんにとっては、実際には良いニュースである。有用になるまでに何年もかけて専門知識を蓄積する必要はなくなった。AIを活用して知識のギャップを埋め、判断力をより速く開発することに集中できる。AIチューターを、単に概念を学ぶためだけでなく、なぜ特定のアプローチがある文脈では機能し、別の文脈では失敗するのかを理解するために利用すると良い。実装だけでなく、トレードオフについて質問するのだ。キャリアの中期にいる開発者は、専門知識をさらに深めるか、判断力へ軸足を移すかの選択を迫られている。専門知識を深めることは、AIと知識で競争することになる。判断力へ軸足を移すことは、AIを活用してより速く動きつつ、より良い意思決定の直感を開発することである。ベテラン開発者は、おそらく既にこの変化が起きていることを認識しているだろう。彼らの価値はコードを書く能力ではなく、悪いコードが書かれるのを防ぐ能力にある。それは、プロダクト要件にいつ異議を唱えるべきか、リファクタリングすべきか再構築すべきか、いつ複雑性を加え、いつそれを取り除くべきかを知る判断力のことだ。
AI時代に成功する開発者は、最も多くのことを知っている者ではなく、最も優れた決定を下す者になるだろう。彼らはAIを使ってより速く動くが、判断力を使ってより賢く動く。彼らは十の解決策を生成し、その中から正しいものを選ぶ。長期的な影響を理解した上で、迅速に機能をリリースする。彼らは専門知識を防衛的な障壁として扱うことをやめ、より良い判断のための基盤として扱い始めるだろう。彼らはシステムとして考えることを学び、シンプルさへの美意識を養い、異なる文脈で働くことから得られるパターン認識を構築する。そして最も重要なのは、AIと戦うことをやめ、それを判断力を増幅させるツールとして使い始めることだ。競争は人間とAIの間にあるのではなく、AIを効果的に活用できる開発者とそうでない開発者の間にあることを認識するだろう。専門知識の終焉は危機ではない。それは解放なのだ。もはや全てを知っている必要はない。ただ、良い決定を下せばよい。そしてそれは、開発する価値のあるスキルである。