【SE歴13年の見解】AIの発達でプログラマーの仕事が将来なくなる?


AI(人工知能)の発達によってプログラマーの仕事がなくなる、失業する?

というテーマはメディアやさまざまなところで言及されています。

AIが発達してくると、本当にプログラマーの仕事は奪われてしまうのでしょうか?SE歴13年の私の見解を述べたいと思います。

まず前提となる日本のIT業界についての記事をご覧ください。

関連記事

日本のIT人材・ITエンジニア不足は、ニュースやさまざまなメディアで取り上げられています。 菅政権に変わり、日本自体のIT化の遅れを取り戻すためデジタル庁を新設するなど、日本のIT人材不足はますます加速しそうです。 20[…]

【結論】AIにすべては奪われないが、段階的に奪われていくと思う

AIがプログラマーの仕事を奪うってことは、「プログラミングをAIがしてくれる」「プログラミングをしなくてもAIがシステム構築をしてくれる」ということです。

大前提として、プログラマーの仕事というのは仕様書・設計書に沿ってプログラミングを行い、システムを完成させることです。

システムと言ってもさまざまな種類があります。

銀行ATMシステム、企業の基幹業務システム、食べログのようなWEBサイトのシステム、ワードプレスで作ったHPのシステム、など業界や要件によって色々なシステムがあります。

大規模なシステムになるほど仕様書や設計書がしっかり作られ、それらを作るのは主にSEになります。SEが作った仕様書にそってプログラマーがプログラミングを行います。

AIがこれらの仕事を奪うということを想像してみると、設計書・仕様書を作る汎用システムが作られ、そこに入力すると自動的にシステムが完成する、といったところでしょうか。

システム要件は複雑だからAIが対応するには10年以上かかると思う

こんな仕組みが作られればとても楽になりますね。しかし現在、設計方法や仕様の作り方は統一されておらず、業界やシステム会社によってもばらばらです。

シンプルなWEBサイトのように、簡単な表示と更新だけならAIで自動化することができます。

既にネットショップが作れるBASEなどは、画面の要素をドラッグ&ドロップで配置してWEBサイトを完成させることができます。

ただこれはAIではなく、さまざまなパターンを仕組み化し、ITに詳しくない人でも操作できるように簡易化しただけのものです。

AIは人工知能ですので、人間が頭で考えることをAIが学習して代わりにやってくれる、ということが本当のAIです。

かなり夢や妄想の世界になってしまいますが、最終的な最強のAIは、「意思決定者達の会議の音声を解釈して、その人たちが欲しがるシステムを勝手に作ってくれる」という感じですかね。

その会議の話を聞いてベースのシステムを作り、後は音声で「ここをこうしてく、ああしてくれ」って追加でいうと、それも自動で反映してくれる。

そんな夢物語が何十年後かには来るかもしれません。

AI以外でプログラマーの仕事がなくなる理由

プログラマーでAIに仕事を奪われることだけを恐れている人がいますが、AI以外にもプログラマーの仕事がなくなる理由はあります。

UIデザインツールによる業務の簡略化

UIデザインツールとは、WEBサイトのUIデザインの部分をツールを使いデザインし、そのデザインを自動でHTMLコーディングしてくれるツールです。

つまり、HTMLコーディングを業務としているプログラマーの仕事は、このUIデザインツールの登場によって急激に減っています。

オフショア開発によってプログラマー求人が減る

オフショア開発とは国内より人件費の安い海外に開発業務を委託することで、ベトナムやフィリピンのシステム会社に委託することで開発コストを大幅に下げることができます。

日本より圧倒的に安い人件費で委託することができるため、オフショア開発が増えてくれば日本国内でのプログラマーの求人は最終的になくなってしまうかもしれません。

どういった仕事がAIに奪われて無くなるか

  • 簡単な改修などパターン化できる仕事
  • マニュアル化できる仕事
  • フロントのHTMLなど簡単なコーディングの仕事

上記のUIデザインツールやオフショア開発の台頭、そしてAIの進化により、これらの仕事はなくなっていくでしょう。

では、AIに仕事を奪われず、プログラマーの仕事がなくならないためには、どうすればよいでしょうか。

AIに仕事を奪われないようにするべきことは?

GoogleなどのIT大手の上級プログラマーは別ですが、一般的にプログラマーは末端の作業者になります。

どの業界でもそうですが、作業者ほどAIに仕事を奪われる可能性は高くなります。

上流工程に携われるようになる(コミュニケーション能力の向上)

SEやPL、PMなど設計側に回りましょう。設計を行う上流工程に回れば、AIが作ってくれるシステムを設計する仕事になりますから、仕事がなくなることはないでしょう。

そのためにはコミュニケーション能力が必要です。

クライアントからシステム開発を受注する会社のPMなら、クライアントとうまく折衝して関係性を構築する必要がありますし、自社開発でも経営層とコミュニケーションをとりながら開発チームメンバーをマネジメントする能力が必要になります。

AIを作るプログラマーになる

AIを作る側のプログラマーになれば、向こう20年くらいはおそらく安泰でしょう。AI・自動化の案件は山ほどありますので、仕事には困らないでしょう。

AIを作るには機械学習ディープラーニングの知識が必要ですし、データを分析するには統計学数学の知識も必要となるため、ハードルが高く誰でもなれる職業ではありません。

需要の高いプログラミング言語を習得する

プログラマーとしてこの先数十年食べていくためには、需要の高いプログラミング言語を習得する必要があります。

プログラミング言語の人気は毎年変化していますし、今流行っている言語が10年後にまったく需要がないなんてことも普通にありえます。

しっかり情報収集し行い、この先も長く使えるプログラミング言語を今日から勉強しましょう。

現在も人気で今後人気が続くであろうプログラミング言語は、ズバリPythonです。

AIのプログラミング言語としても人気ですし、DjangoフレームワークでWEBアプリの開発も人気になっています。

IT技術の最新情報を常に入手する

プログラマーとして生き残っていくには、プログラミングだけできてもだめです。

ITテクノロジーは年々進化し、さまざまな技術が使われ発展しています。

最新の技術でどのようなことが実現できるのか、プログラマーとしてその技術にどのように携わることができるのかなど、常に最新情報を入手して自分の知識として蓄積していきましょう。

PM、ディレクター、マーケターなど複合スキルを手に入れる

プログラミングができるだけでなく、プログラミングで作ったシステムやサービスを使ってお金を生み出す側のスキルを手に入れましょう。

PM、ディレクター、マーケターになれれば、システムをどう作ってどう売ってお金にするかが仕事になるため、この領域まではまだまだAIは入ってこれないと思います。

関連記事

プログラマーのコミュニケーション能力については、さまざまなところで議論が巻き起こっているが、この件に関しては個性や将来のビジョンなどによって変わるから答えは1つじゃない。 いまはダイバーシティ、インクルージョンの時代だよ。[…]

AIエンジニアになるには


AIエンジニアの需要

テレビや新聞のニュースを見てもわかるように、あらゆる業界でAIの導入が求められています。

それに伴い世界中でAIエンジニアの需要が高騰しています。特にAIで最先端をいくアメリカと中国は、世界中から優秀なAIエンジニアを破格の報酬で集めています。

JDLAを取得する

一般社団法人日本ディープラーニング協会が実施するAIに関する資格試験で「JDLA」というものがあります。

この資格を取得することで、ディープラーニングの基礎知識(G検定)や、AI実装能力を持つ人材(E資格)をアピールすることができます。

統計学や高い数学の知識は必要?

AIを作るにはデータを分析するための統計学や高い数学の知識が必要と思う人も多いでしょう。

私自身も初めてPythonのデータサイエンティストの書籍を読んだとき、ハイレベルの数学の知識を使う内容が多く、いきなり挫折しそうになったことを覚えています。

しかし、そこまでの高い知識を必要とされるのは、世界最先端のAIの研究を行う企業で働く場合です。

Pythonには既に統計学や数学を簡単に処理できるライブラリが多く用意されているため、それらの使い方をマスターしていれば難しい知識は必要ありません。

ただし、最低限の知識は必要であるため、AIエンジニアを目指すには統計学や数学の勉強をしておきましょう。

【まとめ】とはいえ、10年はプログラマーは安泰でしょう

最初の方で話した、仕様書・設計書の汎用システムが作られ、すべてが自動化されたとしても、既存のシステムをそれに乗せ換えるだけでも数年単位の時間がかかります

既存のシステムの改修・アップデートの仕事だけでも大量にありますので、10年くらいは今の状態が続くと予想しています。

しかし、IT業界の変化は想像以上に速いです。油断することなく常に新しいスキルや技術を習得し、時代の流れについていけるように精進しましょう。

関連記事

この記事では、未経験のプログラマーからでも最終的に1000万円を目指すためにはどうすればよいかを解説します。 異業種からプログラマーへの転職を考えている人、いま正社員プログラマーとして働いている人、いまフリーランスの人。それぞれの境遇[…]