🤔

AI時代のエンジニアに求められる「抽象化能力」と、学びたい「基礎知識」のギャップ

に公開

AIを使って自然言語でモノを管理する時代が来ています。

その中で、エンジニアに求められる能力と、自分が学びたいと思う知識のギャップに気づいて、ちょっと複雑な気持ちになりました。

同じように感じている方がいたら、ぜひコメントで教えてください!

AI時代に求められる「抽象化能力」

ChatGPTやCopilotなど、AIツールを使ってコードを書いたり、システムを管理したりする時代になりました。

こういったツールを使いこなすために必要なのは、「結局、何がしたいんだっけ?」を言葉にする抽象化能力だと感じています。

  • 「このシステムで実現したいことは何か」を明確に言語化する
  • 「どういう制約・条件があるのか」を整理して伝える
  • 「なぜそれが必要なのか」を説明できる

プログラミング言語の細かい文法や、実装の詳細を知らなくても、AIに自然言語で指示を出せば、ある程度のコードは生成してくれます。

つまり、問題を適切に抽象化して、言葉で表現する力が、これからのエンジニアにとって重要になってくるんですよね。

でも、学びたいのは「具体的なコンピュータサイエンス知識」

一方で、自分の中には別の欲求もあります。

エンジニアとして働いてきた中で、コンピュータサイエンスを体系的に学んだ経験がないという事実が、ずっと心に引っかかっています。

  • アルゴリズムとデータ構造の基礎
  • OSやネットワークの仕組み
  • コンパイラやメモリ管理の内部動作
  • セキュリティの原理原則

こういった「中身」を知っておきたい、知らねばならないという知識欲があります。

AIが生成したコードが「なぜ動くのか」「どんなリスクがあるのか」を理解するためにも、基礎を押さえておきたい気持ちが強いです。

お金を稼ぐ能力 vs 好奇心

ここで葛藤が生まれます。

お金を稼ぐためには、前者(抽象化能力)に比重を置かないといけない。

市場が求めているのは、AIを使いこなして素早くプロダクトを作れる人材です。基礎知識を深掘りするよりも、ビジネス価値を生み出すスピードが重視されます。

でも、好奇心としては後者(具体的なコンピュータサイエンス知識)を推し進めたい。

技術の本質を理解したい、根っこの部分を知りたいという欲求は、エンジニアとしての純粋な興味から来ています。

このギャップ、結構しんどいな〜と思いました。

今の時代のエンジニアは大変だなと思う

昔のエンジニアは、基礎を学びながら実践的なスキルも身につけていくという、比較的一本道だったのかもしれません。

でも今は、「AIを使いこなす能力」と「基礎を深く理解する能力」が、別々の方向を向いているように感じます。

どちらも大事なはずなのに、時間やエネルギーは有限です。

  • 仕事では抽象化能力を磨いて、AI時代に適応する
  • プライベートでは基礎知識を学んで、技術者としての土台を固める

両立するのは本当に大変だと思います。

あなたはどう思いますか?

この記事を読んで、共感できる部分はありましたか?

  • 同じようなギャップを感じている方
  • 逆に「両立できてるよ!」という方
  • 「そんなこと考えなくていい」という意見の方

どんな立場でも構いません。ぜひコメントで教えてください!

きっと、みんな何かしらの葛藤を抱えながら、エンジニアとして働いているんじゃないかなと思います。

一緒に考えていけたら嬉しいです!

Discussion