プログラミング言語別の年収を徹底比較【現役エンジニアが解説】

PROGRAM

プログラミング言語別の年収を知りたい方に。

この記事を読まれている方は、

  • プログラマーの大体の年収を知りたい
  • プログラミング言語別の年収を知りたい
  • エンジニアの年収アップの秘訣を知りたい

おそらくこのように考えている方が多いと思います。

この記事を書いている私は、
プログラミング未経験から転職を果たした現役のWeb系エンジニアです。
エンジニア歴は3年ですが、本業とは別にフリーランスの副業で月10万円ほど、多いときで20万円ほどの収入があります。

この記事では、現役のエンジニアが、プログラミング言語別の年収を徹底比較・解説しています。

プログラミング言語別の年収を徹底比較

プログラミング言語別の年収を徹底比較

まず、結論から言ってしまうと、言語別の年収の順位は以下のとおりとなっています。

順位 言語 年収中央値(万円) 最大提示年収(万円) 求人数(件)
1 Go 600 1,600 2,202
2 Scala 600 1,300 1,489
3 Python 575.1 1,499 9,344
4 Kotlin 575 1,200 961
5 TypeScript 575 1,200 667
6 R 574.8 1,000 220
7 Ruby 550 1,200 11,676
8 Swift 550 1,200 3,353
9 Perl 525 1,200 4,509
10 C 525 1,000 9,347

※求人検索エンジン「スタンバイ」調べ

実際に会社対個人でいくら給料をもらっているかを調べることはできませんので、ここでは求人案件で提示されている年収で見ていきたいと思います。

今回の年収のデータは、株式会社ビズリーチさんが運営する求人検索エンジン「スタンバイ」が発表したデータを使わせて頂いております。

この調査から、比較的新しい技術である機械学習系の言語や最近開発されたばかりの新しい言語が上位にランクインしていることがわかると思います。
その理由としては、上位の言語を扱える人材が市場で不足していること、その一方で、上位の言語を使った開発の需要が多いことなどが挙げられると思います。

以下、一つひとつの言語について、解説をしていきたいと思います。

1位 Go

Go言語はGoogleが開発した言語で、C言語を開発したケン・トンプソンも開発メンバーの中に含まれています。

Go言語では、開発者が多い場合に問題になる表現のバラツキを極力抑えるために、コードもシンプルになっており、例えば繰返構文はwhile文などがなくfor文のみとなっています。

用途としては、Webアプリやスマホアプリの開発など比較的なんでもできるため、その実用性が高く評価されています。

2009年に登場したばかりの言語のため、まだあまり人材がおらず、需要に対して供給が少ないため、単価が高くなっています。

2位 Scala

Scalaはオブジェクト指向型言語と関数型言語の特徴を併せ持った言語で、JavaVM上で動作する言語です。そのため、Javaと互換性があり、ScalaからJavaのAPIを呼び出すことができます。

また、NullPointerExceptionへの対策がなされている言語なため、高い生産性と堅牢性を実現しています。

TwitterやLinkedInなどの外資系以外にも、ビズリーチなどの国内企業でも開発言語として採用されています。

Scalaが登場したのは2003年で決して新しい言語というわけでもないのですが、関数型に対し躊躇があるエンジニアも多いため、他の言語よりはエンジニアの母数が少なく、単価が高くなっています。

3位 Python

Pythonは1991年に登場した言語で、最近では主にWeb開発や機械学習系の開発で使用されることが多いです。

インデントでブロックを判定するなど、より少ないコードで書けるよう設計がされています。

Web開発においてはMVCフレームワークのDjangoがよく使われ、機械学習系においては、Numpyやpandasなどのライブラリが充実しており、よく利用されています。

WebではRubyやPHPの方がメジャーであること、機械学習系の開発では数学の知識が必要になることなどから、単価は比較的高くなっています。

4位 Kotlin

KotlinはAndroidの開発でよく使われるプログラミング言語です。Androidアプリの開発では主にJavaかKotlinのどちらかを選んで開発しますが、KotlinはJavaVM上で動作することからJavaとの高い互換性があるので、簡単にコードの変換ができることからも、急激に伸びている言語になります。

Scalaでも同じでしたが、Kotlinもnullへの対策がされているので、その点がJavaより使いやすい点になります。一方で、Kotlinが登場したのが2011年ということもあって、サンプルコード数はJavaの方が多いので、初心者がいきなりKotlinから入るのは少し難しくなっています。そのため、Javaよりも単価が高くなっています。

5位 TypeScript

TypeScriptはMicrosoftが開発したJavaScriptの拡張言語です。コンパイルしてJavaScriptに変換してからでないと使うことができません。

TypeScriptのメリットは静的型付けであるという点とクラスベースのオブジェクト指向の特徴を持っている点です。JavaScriptは動的型付けでしたので、変数宣言のときの型はあいまいなままでした。

これらのメリットによって、エンジニアの生産性が上がるため、注目を浴びている言語になります。

主にWebのフロントエンドで使いますが、モバイルアプリなどでも使うことができます。JavaScriptと違って緩い言語ではないのと、登場が2012年で比較的新しい言語ということもあり、JavaScriptより単価が高くなっています。

6位 R

R言語は1996年に登場した統計解析向けのプログラミング言語です。他の言語と決定的に違うところは、R言語は専門性の高い言語ということです。すなわち、統計解析向けに作られており、その方面のライブラリも充実している点がこの言語を特異なものにしています。

そのため、扱えるエンジニアは、データ分析系の仕事に従事したデータサイエンティストにほぼ限られてしまうため、単価が高くなっています。実際に統計解析系でない通常のアプリ開発でRを使うことはほとんどないので、なかなか実務で身に着けるのが難しい言語です。

7位 Ruby

Rubyは1995年に日本人のまつもとゆきひろ氏によって開発された言語で、最初からオブジェクト指向を想定して作られた言語です。

オブジェクト指向であること、コードが書きやすいこと、スクリプト言語であることがメリットとして挙げられますが、最大の売りはRuby on RailsというWebのMVCフレームワークが使えることにあります。

また、日本人が開発したということもあり、日本でも情報が多く出回っており、初心者の一つ目の言語として選ぶこともできると思います。しかし、実務ではRailsを使う開発が非常に多いため、Rubyを学んだだけですと、即戦力にはなりにくいです。

Railsを使った開発が非常に多いことと、MVCフレームワークのハードルの高さが単価を高くしている主な要因です。

8位 Swift

Swiftは2014年にAppleが開発したmacOSやiOSのアプリを開発するための言語です。本記事で紹介している中では最も新しい言語となっており、それだけでも単価が高い理由になりますよね。

Swiftができるまでは、Objective-CというC言語ベースの言語でmacOSやiOSのアプリの開発を行っていましたが、最近AppleがSwiftの教育に力を入れるようになり、XCodeというAppleのIDEでも開発できるようになりました。

主にスマホアプリの開発言語として注目を集めており、現在ではAndroidのKotlin、iOSのSwiftというイメージが定着しています。スマホアプリの需要が多いことなどから、単価が高くなっています。

9位 Perl

Perlは1987年に登場した割と古い言語です。ここに順位が上がったのも少し意外で、PHP(1995年)ではなくなぜPerlなのか、というぐらいPerlの案件数は近年徐々に少なくなっています。その理由はPHPの方が書きやすいですし、かなり普及してしまったからだと思います。

年収ランキングでPerlがTOP10に上がる理由はおそらく、PHPエンジニアの数の方が圧倒的に多いからでしょう。Perlエンジニア(供給)は案件数の減少とともに徐々に減っているので、古いシステムの保守や追加開発で一定の需要があるのだと思われます。

10位 C

C言語は1972年に登場した言語で、この記事で紹介したほぼ全ての言語の先祖の言語です。

ほぼ全ての言語のベースとなっているので、基本なんでも開発できます。その一方で、メモリ管理までも自分で行わないといけないため、高水準言語ばかり使ってきた方たちにとってはつらい、というよりそもそも知らない次元のことも実装しなければならなくなる言語です。

そのため、Cのエンジニアは技術レベルが高いため、単価が高くなるのです。C++も内容的にはほぼCなので、この10位のCにはC++も含まれていると考えて良いと思います。

まとめ:エンジニアのための年収アップの秘訣

まとめ:エンジニアのための年収アップの秘訣

ここまでの比較と解説を読まれた方はおそらく、「じゃあ私もGo言語をやろう」とか「Scalaで関数型プログラミングを学ぼう」とか考える方が多いと思うのですが、年収アップを狙うのであれば、逆に言語に捕らわれないことを強くオススメします。

実際、Go言語やKotlin、TypeScriptなど、上で挙げてきた言語の半数近くが10年前にはまだなかった言語です。
また、時代の変遷とともに、注目される技術自体もどんどん変わっていきます。

したがって、言語や機械学習といった技術に捕らわれるのではなく、どんな言語でも対応することができるように、プログラミングの感覚をきちんと身に着けていく、ということが重要になっていきます。

言語に関しては、C言語(あわよくば+LISP系の言語)をやっていれば、大体のことはできてしまうと思いますが、現在は高水準言語から入る方も多いので、基礎がおろそかなままのエンジニアも多くいると思われます。そのような方はC言語を学ぶというのも有用だと思いますし、関数型などの他の種類の言語を色々と使ってみるという方法もありだと思います。

年収を上げていくためには、「とりあえずあの人を呼んでおけばどんなことでもなんとかなる」と思われるような人材になるように、日ごろから色々な言語や技術にキャッチアップするようにしておきましょう。決して年収が高い言語だからといって、その言語一択にはならないようにしましょう。