Javaの市場動向は?案件の需要や将来性をフリーランス向けに解説 | レバテックフリーランス
Javaの市場動向は?案件の需要や将来性をフリーランス向けに解説
- Javaは世界中で広く用いられている言語で、Androidアプリ市場での人気が高い
- Javaは大規模開発に適しており汎用性や需要が高いことから、Java案件数も増加傾向にある
- 「Java案件を獲得したい」と考えるフリーランスは、エージェントを活用するのもおすすめ
エンジニアの方なら気になるであろう「言語・スキルの市場価値」。本記事ではレバテックフリーランスでの事例を基に、個人では把握しにくい企業側の事情であったり、実際の参画事例を交えつつ、言語・スキル別の案件動向や需要をレバテックフリーランスのコーディネーターが解説していきます。
今回はレバテックフリーランスで最も案件数の多いJavaをフィーチャー。Javaに関するキャリアを考える際にお役にたてれば幸いです。
レバテックフリーランスはITエンジニア専門の
フリーランスエージェントです案件を探してみる
企業担当・山下 裕香(やました ゆか)
レバテックフリーランスの企業担当。近ごろ嬉しかったことは、参画中のエンジニアの方から頼りにされたこと。次の参画先での単価アップを目標とする方へ「身につけるべきスキル」や「どう行動すべき」をアドバイスしたところ、実際に成長へつながったことを伺い、大きな喜びを感じた。最近では「PHPでWebページを作成し、社内のエンジニアからフィードバックをもらいながら開発」「オンライン学習サイトでRuby on Railsを学習」など、技術面でのキャッチアップを欠かさない。
テクニカルカウンセラー・岩本 郁美(いわもと あやみ)
エンジニアとの信頼関係を構築することを大切にするレバテックフリーランスのテクニカルカウンセラー。「ご本人が気づいていないニーズや強みを引き出すこと」をモットーにカウンセングを行っている。最適な案件を提案するために、ときにはスキルとして何が不足しているかをアドバイスすることも。技術やIT業界の動向を把握するために、書籍を読んだり勉強会へ参加したりと日々学習に努めている。
目次
そもそもJavaとは
Javaとは、C言語がベースとなっているプログラミング言語です。世界中で広く用いられており、Google三大言語としても知られています。Javaは汎用性が高いのが特徴で、Webサービス開発やAndroidアプリ開発、IoT機器の開発など幅広い分野の開発にて使用されています。
Javaエンジニアの仕事内容について詳しく知りたい方は、「Javaエンジニアとは?仕事内容やフリーランス事情を解説」の記事もぜひご覧ください。
Javaのメリット
Javaはさまざまな開発に使用できるほか、コンパイラ言語のため他の言語より処理速度が速いのもメリットです。さらに、Javaはオブジェクト指向のため既存プログラムを活用でき、複数人での開発も円滑に進めることができます。
また、需要が安定していることから案件を探しやすい、参考書籍が多く学習しやすいといった点もJavaエンジニアのメリットといえるでしょう。
Javaのデメリット
Javaのデメリットは、難易度が高く、独学での習得が難しいことです。オブジェクト指向を理解し、実務で使用するためには、ある程度の経験が必要になるでしょう。Javaを学習する際のコツについては、「 Javaの勉強方法|独学で入門するための学習のコツとステップアップの流れ」の記事で紹介しています。
また、Javaは大規模開発に向いている反面、小規模開発に適しているとはいえません。簡単な開発にJavaを使おうとすると、かえって手間がかかってしまう可能性があります。
言語・スキル別の案件数の割合とは
ここでは、レバテックフリーランスが扱う言語・スキル別の案件数の割合を紹介します(対象期間:2017年4月1日~2018年3月31日)。
言語・スキル | 割合 |
---|---|
Java | 29.22 |
PHP | 14.39 |
JavaScript | 12.96 |
C#/C#.NET | 8.19 |
Ruby | 5.05 |
Java案件の割合は29.22%と最も割合が高く、Java案件数自体も2017度から2018年度にかけてアップしています。Javaはシステム開発やアプリケーション開発などに幅広く使用されている言語のため、需要の高さが伺えます。
なお、Webエンジニアが使うさまざまなプログラミング言語について知りたい方は「Webエンジニアが使用する言語とは」の解説も参考にしてみてください。
単価・スキル・需要から見るJava案件の事情
Java案件といっても案件内容の幅が広く、案件によって担当する作業、活かせるスキルや単価などの傾向が変わってきます。ここでは「BtoB」「BtoC」「Android」に大別して、案件にまつわる事情を見ていきましょう。
BtoBのJava案件事情
山下 : 金融、証券、保険、基幹システムなど、いわゆる業務システム開発などがこちらに該当します。Javaは堅牢性が高い、バージョンアップの頻度も少ない、などの点から、大規模なシステムで採用されることも多いです。BtoBの案件はユーザー企業からSIerへ発注される案件がメインとなっています。
BtoBのJava案件の単価目安 : 660,000円/月(週5日作業の場合)
山下 : BtoBのJava案件は数が多く、経験に応じた需要の幅が広いです。BtoBでは垂直構造の分業の傾向が強く、テストなどの下流工程のみを担当する案件だと低めの単価になり、一方で上流工程まで関わるような案件ですと単価が上がっていく傾向があります。
※金額はサイト内の単価診断ツールにて「Java(業務系)」「経験年数 : 3~5年」「スキルのブランクなし」「要件定義~運用・保守の工程の経験あり」という条件にて算出した単価目安です。
BtoBのJava案件であると活躍できるスキル
山下:BtoBのJava案件で、あると活躍できるスキルは以下のとおりです。
- Java : 3年以上の経験
- SpringやStrutsなどのメジャーなJavaのフレームワークを扱った経験
レバテックフリーランスにおけるBtoBのJava案件では、上記に相当するスキルを活かせるものが多いです。特にSpringやStrutsなどのフレームワークの経験がある方は、より活躍できる傾向が見られます。
また、BtoB案件を発注する側であるSIerの中にはキチッとした分業体制が敷かれているところも少なくありません。例えば実装やテストのみを担当する案件であっても、担当する作業にマッチするスキルを持っていれば成果を上げられる可能性があります。
BtoBのJava案件の需要
山下 : Javaが採用されているプロダクトは数多く、それに準ずるようにレバテックフリーランスでのBtoBのJava案件の数が豊富です。すでに稼働中の大規模なシステムでは別の言語を移行しにくいということもあり、このカテゴリのニーズは依然として大きいです。
また、Javaが採用されているプロダクトが多いため、それに伴いJavaの経験がある方も多く、需要とのバランスが取れているカテゴリといえます。
なお余談になりますが、2015年ごろからレバテックフリーランスへ登録に訪れるJavaエンジニアの方の数が年々増加傾向にあり、フリーランスという働き方が浸透してきている印象があります。
BtoCのJava案件事情
山下 : ECサイトやユーザー向けの自社サイトなど、BtoCのWebサイト/Webアプリケーション開発が主にBtoC案件に該当します。Webサイト/Webアプリケーション開発ではPHPやRubyなど他の言語がポピュラーなこともあり、割合でいうとBtoB案件よりも少なめです(BtoCのAndroid案件については後述)。
BtoCのJava案件の単価目安 : 670,000円/月(週5日作業の場合)
山下 : BtoCのJava案件の場合、開発チームが少人数であることがしばしばあります。それゆえに一人ひとりが担当する業務も幅広く、ある程度の経験を積んだ方が腕を振るっているケースが多く見られるため、その分単価が上がる傾向が見られます。
また、レバテックフリーランスの事情でいえば、性質上エンド直請けがほとんどなので、単価も高めになりやすいという背景もあります。
※金額はサイト内の単価診断ツールにて「Java(Web系)」「経験年数 : 3~5年」「スキルのブランクなし」「要件定義~運用・保守の工程の経験あり」という条件にて算出した単価目安です。
BtoCのJava案件であると活躍できるスキル
山下:BtoCのJava案件で活躍できるスキルとしては、以下のとおりです。
- Java : 3,4年程度の経験
- 要件定義、設計以降から工程を担当できる程度の経験
単価の項でも少し触れましたが、少人数の現場であることも多く、どんな状況でもフレキシブルに対応できる経験値がある人ほど活躍しやすいでしょう。
案件によっては、ドキュメントよりもコミュニケーションを重視するケースもあり、要件定義、設計から担当できる実績やノウハウをお持ちの方が活躍されています。
また、BtoCでは「ユーザーの反応を見ながら素早くPDCAを回していく」という性質上、開発方式やツールなどもBtoBとは異なります。そういった点から、BtoCでの開発経験の有無も重要なポイントです。
BtoCのJava案件の需要
山下 : レバテックフリーランスでの取り扱いはそこそこありますが、すでに触れたとおり、BtoCのWebアプリケーションでは他の言語が採用されていることも多いです。既存のJava案件もScalaやGo言語などに移行しているものも出てきており、案件数は多いといえるかは難しいところがあります。
AndroidアプリのJava案件事情
山下 : Androidアプリの中でもBtoB/BtoCの区分はありますが、同じJavaでもAndroid OSでの開発経験が求められるという点で別物に近いため、ここでは分けて扱っています。
AndroidアプリのJava案件の単価目安 : 780,000円/月(週5日作業の場合)
山下 :前述のBtoC案件と同様に少人数で開発することが多く、設計から実装、リリースまでを1人で担当できるスキルをお持ちの方が活躍しているため、高めの単価となる傾向があります。
案件次第ですが、「Kotlinも触れる」「iOSアプリやWebアプリケーションまで担当できる」といったエンジニアの方はさらに上振れすることもあります。
※金額はサイト内の単価診断ツールにて「Java(Android)」「経験年数 : 3~5年」「スキルのブランクなし」「要件定義~運用・保守の工程の経験あり」という条件にて算出した単価目安です。
AndroidアプリのJava案件であると活躍できるスキル
山下 : AndroidアプリのJava案件で活躍できるスキルとしては、以下のとおりです。
- Javaを使ったAndroidアプリ開発 : 2,3年程度の経験
- BtoCでの開発の経験
少人数のチーム開発が多いため、少数精鋭の環境で個人が裁量を持って進めることが好きな方にフィットしやすいようです。
また、レバテックフリーランスではBtoCのAndroidアプリ案件が多いため、BtoCの経験があるかも重要。例えば、Androidアプリ開発といえどプリインストールのアプリでは、Google Playへの申請をしたり、ユーザーの反応を見てブラッシュアップという機会も少なく、BtoC案件で求められる経験が得られにくいからです。
AndroidアプリのJava案件の需要
山下 : Android案件の場合、案件数に対してAndroidエンジニアの数が少ないという傾向があります。また個人で開発されている方が多く、「チームでのAndroidアプリ開発経験がある」となるとさらにエンジニアの数が不足します。
なお、Androidエンジニアの数が少ないという点には、レバテックフリーランス特有の事情もあります。
スマホアプリ開発の経験がある方は、プロダクトの制作やストア申請などの手を動かす作業はもちろんのこと、ユーザーからのフィードバックを受けて改良したり、マネタイズを考えたりといったことを実地で学んでいます。
そういった方が独立を考えた場合、自分のプロダクトで収益を上げるまでの道筋は見えていますし、知人のつてを辿ってアプリ開発を請け負うということもイメージしやすいはずです。
一方、レバテックフリーランスで取り扱う案件は企業常駐型案件であるため、Androidアプリ開発者の方が案件を探しに登録されるケースは少なくなりがち、という事情もあります。
ただし「人気アプリのノウハウを吸収できる」「デザイナーやマーケターなどの他職種と協力しながらアプリを改善していく経験を積める」「大規模トラフィックの対策を実地で見られる」など常駐型案件ならではの点もあり、個人開発では得られない経験をメリットに感じて参画される方もいます。
Java案件の将来性
山下 : Javaの将来性でいうと、BtoB案件での需要は当面続くと考えられます。Javaは大規模なシステムで多く採用されていることが多く、一気になくなるということは考え難いです。機能追加や改修などでJavaスキルのニーズは残り続けるでしょう。
また、JavaはAndroidアプリの開発に用いられることが多くあります。スマホアプリ市場におけるJavaの案件数は非常に多いため、Androidアプリの開発技術を持つエンジニアの需要は今後も高まっていくでしょう。
その上で、レバテックフリーランスで扱うJava案件の事情でいえば、SpringやStrutsの経験が役立つ案件が多い傾向があります。SpringやStrutsを拡張したフレームワークも含め、業務で触れた経験がある方は多いでしょうが、社内でゼロから開発された独自フレームワークしか経験がない、といったような場合でしたら学習しておくとよいでしょう。
ただし、Strutsは採用されているプロダクトも多いですが、たびたび脆弱性が指摘されているフレームワークでもあるため、Struts以外にも経験があった方がよりベターかもしれません。他にも、Javaで作られたプロダクトをScalaやKotlinへ移行したいという企業側の要望がしばしば見られるため、Scala/Kotlinの習得を目指すのも一案です。
また、レバテックフリーランスへご相談に来られるJavaのフリーランス・フリーエンジニアの方に限っていうと、フロントエンドの経験があまりないというケースがたまに見られます。業務でJSPやJSFなどを通してフロントエンドにも触れてきた方も少なくないと思いますが、もしフロントエンドにあまり自信がないようでしたら学習する価値はあるでしょう。
例えばWebサイト/WebアプリケーションではリッチUI/UXへの需要が高まっていること、SPAへ移行するプロダクトが増えていることなどから、JavaScriptのスキルがあると大きな強みになるといえます。
このようにJavaは需要が高く、求人数も多いのが特徴です。しかし、Javaエンジニアも多く、市場価値が上がりにくい分、他の言語と比較すると年収は高くなりにくいともいえます。Javaエンジニアの年収事業については、「Javaエンジニアの年収|未経験から転職して高収入を目指すには」の記事でも紹介しているため、気になる方はぜひご覧ください。
Java案件を希望するエンジニアの事情
山下 : Java案件を希望される方の多くは、元々Java経験のある方が条件面に興味を持って、というケース。使用言語のスキルチェンジではなく、経験のあるJavaをベースとした上で、
「ずっと保守・運用案件をやってきたので新規開発に携わりたい」
「これまでが客先常駐だったので、会社を挟まずに自分の力でやっていきたい」
「初めてのフリーランスなので、まずは経験を生かしてフリーランスになりたい」
という理由が主なところです。それでは、具体的にどんなJavaエンジニアの方が、どんなJava案件へ参画されたのか、参考となる事例をご紹介いたします。
Javaエンジニア K・Rさんのフリーランス転向事情
- 年齢 : 25歳
- 職種 : Javaエンジニア
- 言語 : Java 1.4~8 (2年~)、 JavaScript (2年~)、 HTML (2年~)、 Java(Android) (半年~・ 独学)
- DB : PostgreSQL 、Oracle 、 MySQL
- OS : Linux 、Windows、 Solaris
- FW等: Struts (2年~) 、Spring (半年~)、 jQuery (2年~) 、Unity (半年~) 、Git(Git Hub) (3年~)
- 開発工程の経験 : 基本設計、詳細設計、実装、テスト
※いずれもレバテックフリーランスご登録時のもの
初参画案件
- 案件 : パッケージ製品/クラウドサービス開発案件
- 職種 : Javaエンジニア
- 使用スキル : Java、Spring、Apache Tomcat
20代は開発経験を高めたいというキャリアプランのためにフリーランスを選択
岩本 : 客先常駐を行うSIerでJavaエンジニアとして働いていたKさんですが
将来的にはマネジメントへ進みたい」「そのベースとして20代のうちは開発経験・知識を高めたい」というキャリアプランがありました。
その意味で、会社の意向や状況でアサインされる案件が左右される会社員よりも、自らが興味・関心のある案件を選択していけるという点にメリットを感じ、フリーランスを希望されていました。
Kさんは在職中にフリーランスの方を交えたチームのリーダーを務めた経験もお持ちでした。そのため常駐型フリーランスという働き方を見ていたことと、Kさん自身も客先常駐という働き方だったため、常駐型フリーランスという働き方がイメージしやすかったのかもしれません。
初めてのフリーランスだけに経験のあるJava案件を希望
岩本 : フリーランスに興味を持ち、Kさんがレバテックフリーランスを訪れた際に出していた案件の希望は「Java & Webアプリケーションの保守・開発」であること。大きな理由としてあったのは「初めてのフリーランスだから、不安な要素を減らすために、技術的には経験のある案件がいい」という思いがあったそうです。
Kさんからは「フリーランスになる」という強い意思が伺えたのですが、いくつかの不安な点もあったようです。通常ですと希望条件についてすり合わせを行った後に、マッチしそうな案件の提案に移行するのですが、Kさんの場合、一度候補となる案件を持ち帰られてから検討されました。その後、参画される時期が近づいてから再度ヒアリングを実施し疑問・不安が払拭されるようにアドバイスいたしました。
Kさんのネックとなっていたのは、主に下記の3点です。
- フリーランスになるまで/なってからの制度/手続きについて
- エンジニアとしてのキャリアプラン
- 自分のスキルの市場価値
それぞれについて、以下で詳しく見ていきましょう。
フリーランスになるまで/なってからの制度/手続きについて
岩本 : 会社員からフリーランスになるにあたり、社会保険の切り替えや開業届の提出などさまざまな手続きが必要です。また多くのフリーランスの方が口を揃えて大変というのが「確定申告」。Kさんも確定申告が不安だったようでしたが、レバテックフリーランスが無料でご紹介している税理士へ依頼するということで対応されていました。
フリーランスエンジニアの税務事情に強く、通常の半額で確定申告代行を依頼できるため、税務に不安がある、本業に集中したいという方はご検討ください。
税理士サービスについて詳しく見る
エンジニアとしてのキャリアプラン
レバテックフリーランスに登録された際に実施するカウンセリングでは、案件の話だけでなく、キャリアプランについてもお話しします。
岩本 : Kさんは将来的にマネジメントへ進むというプランを描いていましたが、やはり不安・迷いはあるようでした。そのうちの一つとして「40歳になった時点でどんなエンジニアであるべきか」というご相談がありました。プログラマ35歳定年説という言葉も気にされる方も依然として多く、頻出の相談事項ですね。
最終的にはご自身の状況次第ですが、「年齢が上になったとしても第一線で活躍し続けられるようにスキルを磨きましょう」ということをよくお伝えしています。
ここでいうスキルには技術以外にも、上流工程であったり、マネジメントであったり、業界知識であったりとさまざまです。そこから先は、ご本人の年齢や技術、指向性などによってアドバイスが異なります。
例えばJavaをメインにされている方でしたら、Javaの需要は残り続けると考えられるのでJavaのスキルを磨く、Javaの経験が豊富であれば実務未経験でもエントリー可能なScalaにチャレンジする、といった方向性が考えられます。Androidエンジニアの方でしたら、同じく需要が高まっており、単価も高くでやすいKotlinの習得を目指すのも有力な選択肢です。Kotlinについては現在はAndroidでの採用が多いものの、今後はバックエンドでも需要が増えると考えられます。
またフリーランスの常駐型案件の場合、セキュリティが厳しい部分や戦略立案、組織作りといった部分へは関わるのが難しいケースもあるため、フリーランスになってどうしていきたいのかというお話は念入りにすり合わせていきます。
自分のスキルの市場価値
岩本 : Kさんは「スキルの市場価値はどんなものか」という点も気にされていました。Kさんはご登録時点でJavaの経験が約2年半と長くはありませんでしたが、Java案件で求められることの多いフレームワーク――Spring・Strutsの経験があったこと、フロントエンドも実務で触っていたこと、基本設計からテストまでの工程もでき、リーダー経験もあるなど、年齢からするとバランスの良い経験・スキルをお持ちでしたので、市場的にニーズがありそうだと判断しました。
経験を積み、次なる案件を探す
2回のカウンセリングを経て、フリーランスへの不安要素を払拭したKさん。いくつかの商談を行い、当初の希望に沿ったJavaを使ったパッケージ製品/クラウドサービス開発案件への参画を果たしました。
その後、2018年10月時点で参画から1年強の期間が経ち、Kさんは現場を支える存在となりました。描いていたキャリアプラン――フリーランスで開発経験を積んでいくーーとおりにコマを進めたことで、さらなるキャリアアップを目指すべく、次なる案件を検討しているとのことです。
フリーランスになって得られたもの
順調にフリーランスとして活躍されているKさんですが「フリーランスになって得られたもの」として、以下のような点を挙げてくれました。
勉強会の参加が増えた
Kさん : これは大きな収穫でした。JJUG(Japan Java User Group)などのナイトセミナーなどにも参加するようになりました。最先端のカンファレンスに参加することで、技術的なモチベーションも高まりました。
フリーランスの方との交流が増えた
Kさん : 「フリーランス」のフロントエンドエンジニアやデザイナー、ベンチャーCEO等と交流するようになりました。普段の業務はバックエンドなので、違った業界や業種の方と交流すると刺激を得られます。幅広い同業の友達も増えました。
まとめ
ここまでで、Java案件にまつわる企業側の事情と実際に参画されたエンジニアの方の事例をご紹介しました。ですがここでの内容は、普段カウンセリングに訪れた方とやりとりしている内容のごく一例です。Kさんの場合は、丁寧に作り込まれたスキルシートを持参されたので不要でしたが、ご希望の方にはスキルシートの添削も行っております。
「案件や企業側の事情を知りたい」「ご自分のスキルの市場価値を知りたい」「キャリアプランの相談をしたい」といったご希望がありましたら、レバテックフリーランスへぜひお気軽にご相談ください。また、Javaプログラマーの仕事内容や求人案件などにつきましては、「Javaプログラマーの仕事内容|未経験から仕事で使えるレベルになるには」の記事でもご紹介しています。
※本記事は2018年10月時点におけるレバテックフリーランスの案件事情を基に解説しております。そのためITエンジニア業界全体の動向を必ずしも反映していないおそれがあることを予めご了承ください。
※本記事で掲載している案件の単価は目安であり、実際のお支払い額はご本人の経験/スキルや超過稼働による増額などで変動する可能性がございます。
Javaに関するよくある質問
ここでは、Javaに関するよくある質問に答えていきます。
Q. Javaの需要が高い理由は何ですか?
Javaの需要が高い理由としては、すでに多くの実績がある、スマホアプリ開発での需要がある、大規模開発に向いている等が挙げられます。
Q. Javaのスキルがあると、どんなフリーランス案件を受注できますか?
基幹システムの開発業務、基幹システムの保守・運用・改修業務、組み込み系システムの開発業務、Webアプリの開発業務、モバイルアプリの開発業務等の案件を受注できます。
Q. Javaのフリーランス案件を受注するには、どんなスキルや知識が必要ですか?
UIやUXを構築するスキル、コミュニケーション能力、Javaの知識、インフラ関連システムの知識、クラウドサーバーに関する知識、アプリの開発知識等が必要です。
Q. フリーランスのJavaエンジニアの平均月額単価はどの程度ですか?
フリーランスのJava エンジニアの平均月額単価は約66 万円です。
Q. Javaにはどんなデメリットがありますか?
Javaには、動作しない環境がある、オブジェクト指向・設計に手間がかかる等のデメリットがあります。
※本記事は2022年8月時点の情報を基に執筆しております。
最後に
簡単4ステップ!スキルや経験年数をポチポチ選ぶだけで、あなたのフリーランスとしての単価相場を算出します!
※相場算出に個人情報の取得はおこないません。
役に立った/参考になったと思ったら、シェアをお願いします。