Warning: Attempt to read property "post_status" on null in /home/polepro/polepro.blog/public_html/wp-content/themes/xwrite/lib/block-pattern.php on line 38

Warning: Attempt to read property "post_status" on null in /home/polepro/polepro.blog/public_html/wp-content/themes/xwrite/lib/block-pattern.php on line 38
以下の悩みに答えます

ITエンジニアの将来性がやばいって本当?
ネット上でそのような情報を見て、心配になってきた……

2023年現在、IT業界は盛り上がりを見せています。

就活性の志望業界や、転職市場においてもITは人気です。

一方で、「エンジニアの将来性はやばい」という意見をインターネット上で目にすることがあります。

本記事では、このような意見の背景や、実際のところどうなのか?

また、将来市場価値を失わないエンジニアになるために、何を意識すれば良いのか?

現在SIer企業でエンジニアとして業務にあたっている経験も含めながら、考えていきます。

この記事の信頼性

以下の経験に基づき、記事を書いています。

  • プログラミング未経験、30代で製造業→SIerに転職。
  • ゼロからのスタートのため、市場価値を上げなければ将来性がヤバいことを痛感しています。

今すぐの話ではないが、考えるべきことはある

結論として、現時点ではITエンジニアの将来性は明るいです。

2023年現在、以下のようにポジティブな要素が多いからです。

  • 学校教育でプログラミングが導入
  • 2025年の崖
  • 2030年には、約40万人以上ものIT人材が不足(つまり売り手市場)
  • DXの加速

世間一般で見ても、プログラミングやシステム開発の注目度、人気が上昇していると言えます。

2023年の男子高校生のなりたい職業ランキングでは、ITエンジニア・プログラマーは2位とのこと。

今後まだまだ需要が多い時期が続くことは、SIerで勤務していて実感します。

しかし一方で、AIの急速な発展には注視しておきたいところです。

長い目で見たときには、自身の市場価値を守るために、考えるべきことがあります。

まずは、エンジニアとしての自分の立ち位置を認識することが大切です。

エンジニアのランク付け

一言でITエンジニアといっても、その実力や年収は玉石混交。

業務レベルに応じて、以下のようなピラミッド構造になっています。

  • 世の中を変えるイノベーションを生み出すエンジニア
  • 顧客の要望を実装仕様に翻訳できるエンジニア
  • 仕様通りにコーディングするエンジニア

IT業界全体で見たとき、人口分布は以下のようにピラミッド状になっていると感じます。

①イノベーションを生み出すエンジニア

天性とたゆまぬ努力で、圧倒的実力を兼ね備えているタイプ。

  • GoogleやApple、Microsoftなどの超有名IT企業に勤務
  • 革新的システムをリリース
  • AIなどの今をときめく技術をリード

誰にでも手が届くポジションではありませんが、収入も名声も圧倒的で、全てのエンジニアの憧れですよね。

(僕も含めた)ほとんどの方は、このクラスのエンジニアの華々しい活躍に影響されて、IT業界を目指しているのではないでしょうか。

②上流工程に携わるエンジニア

一般的に、システムエンジニアと言われるポジション。

顧客と打合せし、要求分析や要件定義、システム設計を行います。

打合せの中で、顧客の要望や実現可否を加味しながら、プログラムの実装仕様を決めていける技術者。

プログラミングスキルを持った、コンサルタントとも言えますね。

③下流工程に携わるプログラマー

前述の上流工程で決定した開発仕様書に沿って、実際に手を動かしてプログラミングをしていく役割。

一般的にはプログラマーと呼ばれるポジションです。

機能を作り上げることに加えて、その後のテスト工程も担うことが多いです。

システム開発はチーム戦。

担うロールに貴賤はない、と言いたいところですが……

エンジニアの将来性を案ずるにあたり、自分がどのカテゴリに属しているのかは、常に自問自答していきたいところです。

AIとの勝負が始まる

ITエンジニアの将来性がやばいと言われている理由。

それはズバリ、生成AIの台頭です。

2022年からAIの進歩は飛躍しており、無料で使えるChat GPTに触れた方は、衝撃を受けたのではないでしょうか。

現在、AIがこなせるのは自然言語処理ですが、近い将来、プログラミングも人間レベルでAIがこなせるようになることは間違いありません。

労働者に支払われる賃金は、その作業を何らかの方法でこなすための最低コストです。

AIが成熟すると、作業コストは人間を雇用するよりも圧倒的に低いです。

よって、プログラミングをこなす実用レベルのAIが普及すると、エンジニアはお払い箱になる。

あるいは大きく市場価値を下げる、といったことが騒がれているのです。

これが、AIの影響でITエンジニアの将来性がやばいと言われる理由なのですね。

浸水ラインはどこなのか?

前章で、エンジニアのスキルレベルおよび人口分布は、以下のようなピラミッド構造になっていることを紹介しました。

  • 世の中を変えるイノベーションを生み出すエンジニア
  • 顧客の要望を実装仕様に翻訳できるエンジニア
  • 仕様通りにコーディングするエンジニア

これからの時代はあらゆる業界において、AIの進歩に伴い、AIがこなせるようになった作業はどんどん人間からAIに置き換えられていくはずです。

だんだんと海面が上昇していく様子に似ていますね。

では、ITエンジニアにおいて、AIに仕事を奪われる/AI時代も市場価値を保てる、境界線はどこなのでしょうか。

結論、決められた仕様通りに手を動かすだけのエンジニアの将来性はまずいです。

上図でいえば、③のポジションになるでしょうか。

なぜなら、プログラミングを実務レベルでこなせるAIが登場したとき、真っ先にポジションを奪われる立場だからです。

一方、②以上のポジションは、問題解決、創造性、コミュニケーションなど、AIでの代替が難しいスキルを武器に仕事をしています。

よって、たとえプログラミングをAIが担うようになっても市場価値は変わらない。

むしろ、AI開発によりスピードが上がるので、エンジニアリングはよりアイデア重視の勝負になる。

つまり、市場価値が上がる可能性すらあると感じています。

もし現在のポジションに不安があるなら、AI時代までの猶予期間で、軌道修正を図るべきです。

これからIT業界を目指すなら

これからIT業界を目指す方は、エンジニアは黙々とプログラミングをこなす職業ではないことは、肝に銘じておくべきです。

エンジニアは、高い技術力を武器に、顧客の課題を解決するソリューションを提案するコンサルタントです。

プログラミング技術と並行して、広い視野や問題解決能力、コミュニケーション力を磨いておくことが重要だと感じます。

AI時代を生き残るために、今から意識したいこと

もし現時点で、将来的にAIに代替される可能性のある作業に従事しているエンジニアであったとしても、悲観する必要はありません。

AIが実務レベルのプログラミングをこなせるようになるまでには、もう少し時間がかかるからです。

その間に、自身のキャリアの軌道修正を図ればOK。

具体的には、前述のエンジニアの階層構造のうち、より上位を目指してポジショニングすることです。

  • SEの担当領域に近づけるよう名乗り出る
  • 「なぜそうなっているのか」「どのような意図があるのか」を意識して仕様書を読む
  • 現状の問題点に気づき、改善を提案する

SEの担当領域に近づけるよう名乗り出る

多くのIT企業において、プログラマーからSE(システムエンジニア)へ、というキャリアルートが存在します。

システムエンジニアは、問題解決能力や発想力、コミュニケーション力を生かして顧客の要求を実装計画に落とし込むのが仕事ですが、プログラミングの経験や知識が無ければ、それが実現可能なのか判断できません。

そこで、最初はプログラマーとしてスタートし、開発現場でコードを書きながら知識と経験を積み、徐々に上流工程に移行していく、というスタイルが一般的です。

周囲にこのようなキャリアを歩んでいる方が多いのであれば、現在の役割で結果を出しつつ打席に立つチャンスがあれば名乗り出て、担当領域をより高度化していくのがおすすめです。

また、下請けの開発会社であったり、現場にこだわりたいという方も、プログラマー職の中にもリーダーポジションが存在します。

  • 開発チームを取り纏める開発リーダー
  • Git運用やコーディング規約を取り纏める

これらも高度な折衝力が必要で、AIには対応が難しいと思われる役割のため、チャンスがあれば取り組んでみるべきです。

仕様書の本質を読み取る

開発仕様書に書かれていることを鵜吞みにして、何も考えずにそのまま実装するプログラマーがいます。

果たすべき役割としては正しいのかもしれませんが、それだけではほぼ確実にAIに代替されてしまいます。

システムエンジニアが作成する仕様書は、100%正解とは限りません。

現場で現在進行形で開発作業に従事しているという点では、最新のプログラミング技術に関する知見はプログラマーのほうが高いはずです。

  • この要件に対して、この使用は権限が過剰 or 不足しているのではないか?
  • 以前この技術スタックの組み合わせで問題が生じたが、これを認識したうえで選定しているのか?

これらのポイントは現場にいるプログラマーでなければ気付けないものです。

しっくり来ないと感じたポイントは、仕様書作成者にフィードバックして確認をとるべきです。

また、これができるようになるため、「自分ならどのような仕様書を作るか」という視点も、常に持っておくことが重要ですね。

現状の問題点に気づき、改善を提案する

前述の通り、システムエンジニアの作成する実装仕様書は100%正しいとは限りません。

また、IT技術の進歩は非常に速いため、求められる要件に対して、より良い技術や手法が存在するかもしれません。

そのようなポイントに気付いた場合、SEにフィードバックしたり、改善の提案をしてみるべきです。

一般的にはSEのほうが役職が上なので、気後れするかもしれませんが、システム開発はチーム戦。

風通しの良い意見交換からトラブルを未然に防げる可能性があるので、積極的な発言は歓迎のプロジェクトが多いですね。

これらの点に不備があると、システムエラーや脆弱性に繋がる、大きな問題になることがあります。知見を活かして未然に防ぐことができれば、感謝されるとともに、存在意義のあるプログラマーになれます。

まとめ:AIに代替されない領域のエンジニアに

この記事では、以下の内容を解説してきました。

この記事のポイント
  • 現時点では、エンジニア全般の需要は高い
  • プログラミングAIが実用化されるまでに、エンジニアとして生き残れる実力を身につけなければならない
  • 単純作業ではなく、人間にしかできない作業領域を担当できるようになりたい

現状、まだまだAIは業務レベルで実用的ではありません。

エンジニアの仕事には、問題解決、創造性、コミュニケーションなど、様々な側面が含まれており、これらをすべてAIが代替できるようになるには相当な時間がかかると感じています。

僕もエンジニアの一人として、身の振り方を考える猶予があることはありがたい限りです。

しかし、エンジニアの作業領域の中でもAIに代替されやすい分野はありますし、またAIの進化は速く、油断はできません。

IT技術に生きる者として、動向及び、AIが普及しても市場価値を失わないエンジニアであることは常に自問自答したいところです。

将来にわたって競争力を維持するためには、継続的な学習、多様なスキルの獲得、そして柔軟性を持つことが重要です。