実は市場価値の低い「プログラマ」という仕事

プログラマとシステムエンジニアの違いをご存知でしょうか? エンジニアになりたい、という方には、ぜひ両者の違いを知っておいてほしいと思います。なぜなら、どっちに属するかで年収がぜんぜん違うから。

エンジニアの分類と年収の詳しい話は以前記事にしたので、興味がある人はまずこちらから見ていってくださいね。

システムエンジニアの年収幅が異常な理由(300〜1500万円)

 

ちなみに、私はコミュ障ぼっちでフリーランスのエンジニアをやっています、34歳です。私のプロフィールに興味を持ってくださった方は、ページ下部の筆者紹介、Twitter(@suekiaoi)やInstagram(@aoi.sueki)などからご確認いただければと思います。

 

実は市場価値の低い「プログラマ」という仕事

システムエンジニア(IT人材)は、大きく従来型と先端型に二分されます。先端型は、AIとかビッグデータとかIoTとか、まぁここ数年で本格的に流行りだしたジャンルをメインに扱う人たちです。従来型は、それ以外。(ちなみに私は最近は先端型)

 

プログラマは従来型に属し、プログラミング(コーディング、つまり、コードを書くこと)が仕事です。言語は、Java、C、PHP、Ruby、Python、Go、Node.js、、とめっちゃいろいろあります。一つの言語しか使えない人もいれば、たくさんの言語を使える人もいます。

年収は300万円〜400万円くらい。

思ったより安い、と感じる人が多いかもしれませんね。ただ、その仕事の内容を知れば納得してもらえると思います。

 

プログラマ = 通訳さん

プログラマはコードを書くのが仕事、と言いましたが、どんなコードを書くか、は別の人(狭義のシステムエンジニア)が決めて設計書を作るので、プログラマはその設計書を「コード」に翻訳するのが仕事です。

英語を日本語に翻訳する(通訳する)、という仕事と似ています。翻訳する人にもレベルがあり、行間まで読み取って日本人に響く表現にしてくれる人から、Google翻訳の方がわかりやすいわ!ってくらい読みにくい直訳しかできない人までいろいろですよね。

 

プログラマも同じで、設計書の行間まで読んで「設計書には書いてないけどこういうバリデーションもいるよね」って追加実装してくれたり、「この処理はこう書いたほうが行数が少なくてスッキリする」「変数名はこういうルールで作ったほうが後でメンテする人にもわかりやすい」などコードそのものを美しく、シンプルに書く技術に優れている人もいます。一方で、設計書に書いてあることだけを忠実に実装するだけ、とりあえず動くものを作るだけ、という人もいます。

当然、前者の方がありがたがられますし、フリーランスだったら高い単価でもこの人にお願いしたい、と思われやすいと思います。

 

しかし、プログラマは、基本的にコードを書くことが仕事。上流の設計から大きく変えるようなことはできないんですね。

上流の工程(システムの構成を決めたり、通信方式、処理するデータの保存の仕方、DB参照頻度に合わせた同期処理など)は、狭義のシステムエンジニアだったり、インフラエンジニアの仕事だったりします。

プログラミングの仕方、つまりソースコードの書き方一つで大きく変わることよりも、システム構成そのものの方が影響が大きい、というのは想像しやすいかと思います。影響が大きいということは、仕事で付加できる価値、つまり付加価値も大きくなります。だから、ただコードを書くプログラマよりも、システムエンジニアやインフラエンジニアの方が高単価になっています。

 

ちなみに、個人的には、使える言語の数はあまり関係ないですね。

説明したとおり、プログラマという仕事自体が、高単価になりにくいと思ってもらって差し支えないと思います。

 

ただのプログラマは、AI( GPT-3 )で代替される

プログラマは通訳さん、と表現しました。

通訳さん、翻訳家さんも、レベルによると思いますが、ただ機械的に直訳するだけ、という人は、今後生き残っていくのが難しい時代になっているかと思います。というのも、Google翻訳はじめ、自然言語処理技術の発達、AI(AutoML Natural Languageなど)の登場で自動翻訳のレベルが急激に上がっているから。

10年前のGoogle翻訳とかぜんぜん使い物にならなかったですが、いまはかなり精度高いですよね。聞き取り、読み上げ機能なんかも付いて、日本語もかなり堪能にお話になりますよね。私なんか、仕事関係の人より Google Home との方が意思疎通がスムーズに感じることがあります。(人間は主語を省略したりするから、何言ってんのかよくわからないときがあるw)

[ぼっち][運動][習慣化] Google Homeを使って筋トレを朝ルーティンに組み込む方法

[ぼっち][運動][習慣化] Google Homeのルーティンがうまく動かない時の原因と対処法

 

まぁ翻訳の話はこれくらいにして、プログラマに戻りたいと思います。

プログラマは通訳さんと同じ。では、もしかしてすでにGoogle翻訳みたいな、プログラマに取って代わるAIが出ているのか? というと、答えはイエス。

 

まだ実用化のレベルではないそうですが、おそらくそんなに時間はかからないと思います。(たぶん2~3年くらいかな..)私がそう思ったのは、GPT-3という製品をみたから。

 

プログラマに取って代わるかもしれないAI 「GPT-3」

GPT-3 とは、ディープラーニング(深層学習)を使って人間のようなテキスト(文章)を生成する自己回帰言語モデルです。っていわれても意味分かんないと思いますが、要するに、文章をつくるAIってことですね。

文章といっても、小説みたいなものだけじゃないんですよ。

なんと、プログラマが書くソースコードも作れちゃうんです。

 

 

 

上の動画で何が行われているかというと、

「グーグルのロゴ、検索ボックス、『グーグルを検索』と『私はラッキーだ』と書かれた2つの薄い灰色のボタンの間にパディングをつける」

って文章で命令したら、GoogleのホームページっぽいHTMLコードを返してくれました、ということです。

 

これはね、すごいことなんですよ。

「灰色のボタン」って命令すると、HTMLで <button>タグのコードを生成し、「検索ボックス」って命令すると、HTMLで <input>タグのコードを生成し、「Googleのロゴ」って命令すると、HTMLで <img>タグのコードを生成します。

こういう曖昧な表現って、コンピューターは苦手だったんです。

たとえば、「灰色のボタン」を表示させたいって思った時、

画面全体のどの位置に配置するのかピクセル単位で指定し、灰色ではなくカラーコード(#cccccc みたいな)で指定し、ボタンの幅や高さは何ピクセルで、ボタンに表示する文字のフォントは何にするか、文字の大きさ、色、ボタンの枠との距離、右寄せなのか中央揃えなのか、、、、、

など、たくさんのことを指定しなければいけませんでした。

この辺を、これまでは人間がお給料をもらって、設計書を見て、考えて、コードに翻訳する、ということを行ってきました。その人間というのが、プログラマであり、WEBデザイナであり、だったわけです。

これが、「灰色のボタン」って命令するだけで、AIが勝手に「いい感じのボタン」を考えて、コードに翻訳して返してくれることができるようになりましたよ、ってニュースなのです。

しかも、命令してないのに勝手に中央揃えにしてくれるという気遣いまで完璧です。もはやどこにお嫁に出しても恥ずかしくないレベル。

 

勘の良い人はもうお気づきかと思いますが、これがなぜヤバいのかというと。

HTMLでコレができるということは、PythonでもPHPでもJavaでもGoでもできるということを意味するからです。

 

設計書とは、顧客がプログラマに宛てたクソ長い手紙

話はそれましたが、「設計書を作ってプログラマに依頼する」という従来型ITの業務も、時代遅れになる日はそう遠くないのではないか、と思いました。もっと先だと思ってたんですが、去年時点でこのレベルか〜って感じですね。

設計書って作るのもメンテするのもクッソ大変じゃないですか。IT業界では、設計書とか直してる場合じゃない時は「ソースコードが正です」とかいって設計書をシステムが全部完成してからまとめて直すという逆転現象が起きたりします。ソースコードを見ながらそれを設計書に落とすという、、、社畜時代、これやって終電逃したりしてたのでバカらしくて尿漏れしそうになってました。どうせ直す時ソースみるから必要ないし、しかもソースから設計書に翻訳する時に結構ミスとか抜け漏れとか発生するから、まじで時間のムダだと思いました。

すみません、昔のことを思い出すとつい熱くなっちゃいますね。わるい癖です。反省はんせい。

 

設計書とは要するに、顧客がプログラマに「こういうシステム作りたいからソースコードに翻訳してね」ということを書いたクソ長い手紙です。

GTP-3 が実用化レベルに達すると、顧客が「こういうシステム作りたいからソースコードに翻訳してね」って直接命令を打ち込むだけで済むようになります。

つまり、設計書とかいらなくなるんです。(ついでに翻訳するだけのプログラマもいらなくなる)

プログラマにとっては悲しいニュースかもしれませんが、一人あたりの生産性は爆上がりするでしょうね。悪いことばかりじゃありませんよ。日本は少子高齢化で働き手が足りませんから、こういう技術をガンガン取り入れて、人間はより難しい仕事・本質的な仕事に時間と労力を捧げられるようになるのは良いことです。

プログラマも、ただ機械的に翻訳する作業から解放され、もっと面白い仕事ができる(ジョブチェンジ!)と前向きにリスキリングしていけば良いのです。

 

さきほどの GTP-3 のツイートは2020年7月時点のものなので、いまはもっとバージョンアップしてるかと。

わたしも時間つくって触ってみたいと思います。

 

まとめ

  • プログラマの年収が低い理由は、下流工程だから
  • GTP-3 すごすぎる
  • もう設計書は不要になるかもしれない(嬉)

 

ここまで読んでいただき、ありがとうございました!

参考になったよ、という方はTwitter(@suekiaoi)やInstagram(@aoi.sueki)などでフォローしていただけると励みになります。

不明点・ご質問などありましたらわたしのTwitter DM(@suekiaoi)にお気軽にどうぞ!

それでは!

末岐 碧衣
  • 末岐 碧衣
  • フリーランス のシステムエンジニア。独立後、一度も営業せずに月収 96 万円を達成。1986年大阪生まれ。早稲田大学理工学部卒。システムエンジニア歴 12年。
    2009年、ITコンサルティング企業に入社。3年目でコミュ障が爆発し人間関係が崩壊。うつにより休職するも、復帰後はコミュ障の自覚を持ち、「チームプレイ」を徹底的に避け、会社組織内においても「一人でできる仕事」に専念。社内外から評価を得た。
    無理に「チームプレイ」するよりも「一人でできる仕事」に専念した方が自分も周囲も幸せにできることを確信し、2015年フリーランスとして独立。