Javaとは

今回は、GitHubPullRequestの2019年1月~3月の統計で第三位にエントリーされたプログラミング言語、Javaについてみていきたいと思います。

JavaはC言語の流れを組む、いわゆるC系言語の一つで、1995年に公開されました。

Javaは非常に成功したプログラミング言語で、Webサービスの構築やandroidアプリの開発で利用され、国内ではもっとも利用率が高いプログラミング言語だと思われます。

「30億のデバイスで走るのに客先では走らないJava」というフレーズも、ITエンジニアジョークとして、業界人の間でよく使われました。

また、そもそもとして、Javaは組み込み系をターゲットに開発されたプログラミング言語でもあります。

いずれの分野でも、Javaが高い割合で利用されています。

このように、Javaはありとあらゆるタイプのシステム開発に対応可能なプログラミング言語と言えます。

なぜ、Javaがこのようにあらゆるタイプのシステム開発に対応できるかというと、その秘密はJVM(Java仮想マシン)の存在です。

例えば、iOSアプリ開発で人気のSwiftは、iOSでは動きますが、Windows上では動きません。

OSごとの“差異”をプログラミング言語側で吸収する仕組みがないと、プログラミングしたソースコードを単純に移植しただけでは、動かないのです。

そこでJavaはOSごとの“差異”を吸収する仕組みとして、JVMというものを用意しています。

JVMがOSごとの差異を吸収し、JVMより上位のレイヤーでプログラムを実行させることで、Javaは、OSが異なっている環境でも、単純にソースコードを移植するだけで動作するようになっています。

この仕組みのおかげで、一度作ったソースコードを簡単に再利用できる、というメリットにも繋がり、結果として、エンタープライズシステムでもWeb系でも組み込み系でもJavaが多く使われるようになったのです。

一見、Javaは無敵のように見えますが、登場してから約20年経ち、Javaをモダンにすることを目指した新しいプログラミング言語がいくつか登場しています。

そうしたプログラミング言語も含めてJVMを利用するプログラミング言語のことを“JVM言語”と総称します。

昨年の順位と比較して考察

2019年1月~3月の統計で第三位だったJavaですが、2018年1月~3月の統計でも第三位でした。

上位言語として、安定した地位にあると言って過言ではないと思います。

PythonやJVM言語、Rustなど他の注目プログラミング言語の動向が気になるところですが、この5年ほどの動向としては、それらの言語が騒がれているものの、Javaに取って変わるまでの影響力は持てていない、という印象です。

Javaが特に得意とする、エンタープライズシステムや組み込み系などは、過去のソースコード資産の流用も含めて“実績”が重視されため、なかなか他のプログラミング言語に移行する動きが出ないというのもあるかもしれません。

なお、ディープラーニングの登場以降、注目が集まっている人工知能(AI)の分野では、PythonやC++を使うのが一般的であり、現状、Javaの利用はあまり考えられません。

決してJavaで人工知能開発ができないわけではありませんので、今後、どうなるのか気になるところです。

Javaは転職に強いのか

転職インタビュー

すでにご紹介した通り、Javaは国内において圧倒的な利用率を誇り、様々なエリアで利用可能なプログラミング言語ですので、転職においても強い言語であると言えます。

もちろん、同じJavaといえども、業界業種によって開発したいシステムが違なるので、求められる技術(どちらかと言えば、テクニック)にも差異があるはずです。

また、同じ業種であっても会社によって使っているフレームワークが異なるなどの差異が考えられますから、ボーダーレスでどこの会社でも仕事ができるかどうかは、また別の話でしょう。

それでも、様々な業界業種にチャレンジできる選択肢の広さは、Javaの強みと言って間違いないでしょう。

ただし、Javaは仕事が多いものの、扱えるエンジニアも多い、という転職活動上の注意点もあります。

極端な話、Javaのソースコードを書かせたいだけであればフリーランスや人材派遣という形で、正社員より安いコストで簡単にある程度の能力を持つ、作業者、労働力を集めることも可能です。

それでも、敢えてJava人材を正社員として採用したい企業の意図って、なんですか? というところです。

「正社員にする価値のある人材」は単にJavaのスキルだけで決まるものではないのかもしれません。

Javaのスキルを押しにすると、ひょっとするとライバルとなる他の転職者と差にならないどころか、ライバルの方が華やかな実績、優れた実装力を持っていた場合、かえって不利になることもあるでしょう。

他のプログラミング言語にも言えることかもしれませんが、「Javaができる」のは、あくまで最低条件であり、それ相応の地位や待遇を得られるかどうかは、本人のマインドや振る舞いに大きく左右されるように思います。

活躍できる業種と年収

繰り返しになりますが、Javaは多くのエリアで使われているので、いわゆるIT業界はもちろん、組み込み系システムの開発が必要な製造業、あるいはandroidアプリ開発でその他の非IT業界からもニーズがあります。

そして年収ですが、Javaは非常にエンジニア間の年収格差が大きいプログラミング言語といわれています。

一握りの一流Javaプログラマーは年収2000万円以上といわれています。

一方で、エンタープライズシステム開発の領域などでは多重下請けが現実として存在しており、末端企業勤務だと年収300万円に乗らないこともあります。

そういう意味では、Javaで転職を考えている方は、業種もそうですが、企業の立ち位置、レイヤーにも注意を払った方が良いでしょう。

まとめ:Javaは仕事が多いけれどマイナス要因も

新世代のプログラミング言語の登場でJavaの利用率が下がるだろう、という論調も一部ではありますが、現時点では、そのような傾向は見受けられません。

今後もJavaは転職市場で多くの引き合いのあるプログラミング言語であり続けると思います。

しかし、多くの環境で使われているからこそ、ライバルとなる他の求職者も多く、年収が上がりにくい傾向がある、というマイナス要因もあります。

Javaで転職を考えている方は、Javaの実装力を高めるのは当然ですが、Java以外のプログラミング言語を第二言語として習得するだとか、マネジメント能力を鍛えるなど、Java以外の“プラスα”があると、転職市場で優位に立てるのではないでしょうか。

今すぐシェアしよう!
今すぐシェアしよう!