Java特化エンジニアとして市場価値をあげるための作戦

こんにちは、アマノケンシです。

前回の記事に書いたとおり、自分自身のエンジニアとしての市場価値が低かったわけですが、今回はJavaエンジニアとして市場価値をあげるための方法を考えていこうと思います。

私の経歴をざっくりと書くと、Aras InnovatorとIBM BPMと呼ばれる2種のパッケージを利用した開発を1年半ずつ程度、計3年経験してきました。

言語的にはパッケージにあわせてC#とJava・JavaScript・SQLです。

私と同じようにパッケージを利用した開発がメインで、スクラッチでの開発経験がないJavaエンジニアの方はぜひご覧ください。

最終的な目標はフレームワークを利用した開発

前提として、最終的な目標はフレームワークを利用した開発ができるようになることです。

今回はフレームワークを利用した開発ができるようになるため、どういう手順でスキルアップしていくのがいいのか考えていきます。

まずは静的Webページを作れるようになる(HTML・CSS・JavaScript)

パッケージを利用した開発の場合、フロントはパッケージに搭載されたオーサリングツール的なものを利用することが多いはずです。

実際、私が利用していたAras InnovatorやIBM BPMと呼ばれるパッケージも、オーサリングツール的なものを利用してGUIで画面を作成していました。

フレームワークを利用した開発を行う場合、HTMLやCSS・JavaScriptでフロントを作りこむことになるので、これらの学習をしていきます。

HTML・CSS・JavaScriptの学習におすすめの書籍

私自身以下の書籍を利用してきました。どれもおすすめできるものです。

これからWebをはじめる人のHTML&CSS、JavaScriptのきほんのきほん

タイトルのとおり、HTML・CSS・JavaScriptについて学べます。

BootstrapやjQuery・Vue.jsの基礎についても紹介しているのが特徴的です。

HTML・CSS・JavaScriptについて深くはありませんが、広く浅く学べるので、フロントに主軸を置かない場合にはこの本だけでもいいと思います。

現場で使える最低限の知識がしっかりと身につく HTML/CSSデザインTextBook

HTML・CSSについて名前どおり教科書的に細かく学べます。

本気でHTML・CSSを学びたい場合には大変おすすめです。

反面内容が詳細すぎるので、時間がない方には向かないかもしれません。

知識ゼロからはじめるゆっくり・ていねいJavaScript ES6対応

JavaScriptを基礎から丁寧に学べます。

「これからWebをはじめる人のHTML&CSS、JavaScriptのきほんのきほん」のJavaScript編では不十分だと感じた方には、特におすすめです。

動的Webページを作れるようになる(JSP・Servlet)

静的なWebページを作れるようになったら、フレームワークの学習前に古典的な動的Webページを作成できるように学習します。

JSP・Servletを利用して動的Webページを作ります。

JSP・Servletの学習におすすめの書籍

私自身、現在JSP・Servletの学習(復習)中ですが、上記の書籍「基礎からのサーブレット/JSP 新版 (基礎からシリーズ)」を利用しています。

導入から触れており、初歩からしっかりと学べてよい本です。付録にEclipseを利用した開発方法も記載されていますが、本編ではテキストエディタを利用し、手動でコンパイルを行う開発がメインです。

Javaフレームワークを利用した開発(SpringBootなど)

JSP・Servletにより動的Webページを作成できるようになったら、今度はフレームワークを利用した開発方法を学んでいきます。

代表的なフレームワークは一度触れておいたほうがいいでしょう。

Javaフレームワークの学習におすすめの書籍

最近はSpringBootを利用した開発が多いので、SpringBootも含まれていて、代表的なJavaのフレームワークを利用できる以下の書籍「EclipseではじめるJavaフレームワーク入門 第5版 Maven/Gradle対応」がおすすめです。

O/Rマッピング用ライブラリのHibernateやフレームワークのSpringやSpringBoot・Playフレームワークなどさまざまなフレームワークを取り扱っています。

まとめ:Javaエンジニアとして市場価値をあげる方法を考えました

Javaエンジニアとして市場価値を高める方法を考えました。

以下の順番で学習するのがよいと考えています。

  1. HTML・CSS・JavaScript
  2. JSP・Servlet
  3. Javaフレームワーク

私と同じようにパッケージベースの開発しか経験がない方は、ぜひ参考にしてください。