この記事はこんな人へ
- 新卒でWEB系のエンジニアを目指している方。
- WEBアプリケーションエンジニアがどのような仕事をしているか知りたい方。
このシリーズについて
システムエンジニアの種類というテーマでシリーズの連載を行っていきます。
このシリーズは大きく分けてインフラエンジニア、開発エンジニア、プロジェクトマネージャーについて記載していきます。
他にも「データサイエンティストはどうなんだ?」や「社内SEはどうなんだ?」みたいな意見が出てくる可能性がありますが、初心者向けの記事となっていますので、複雑になってしまうその他のエンジニアについては気が向いたらシリーズの続編として書いていこうと思っています。
ただ、システムを作る段階から提供するまで網羅できる内容のシリーズとなっていますので楽しんでいただけたらなと思っています。
WEBアプリケーションエンジニアとは
おそらく、IT業界未経験だけど少しプログラミングを触ったことがある人にとっては、WEBアプリケーションエンジニアが一番エンジニアとして想像できるものでしょう。
WEBアプリケーションエンジニアはシステムの基盤を作るインフラエンジニアとは違い、ユーザが実際に使う画面(フロントエンド)を作ったり、アプリのロジック(バックエンド)を作ったりします。
言語の市場動向
フロントエンド
フロントエンドの言語としては現状JavaScript一択です。
JavaScriptにはReactというフロントエンドに特化したライブラリがあり、大規模な開発にも対応できるためReactはフロントエンド市場の大部分を占めています。
また、Reactと同様にフロントエンドの大規模開発に用いられているTypeScriptという言語があります。
TypeScriptはMicrosoft社がJavaScriptを拡張する形で作ったプログラミング言語なので、このことからもフロントエンドエンジニアを目指す人が学習すべき言語はJavaScriptと言うことができます。
また、誰しもが聞いたことがあるYahoo! JAPANもフロントエンドにReactとTypeScriptを使用していることからもフロントエンドはJavaScriptが強いということができるでしょう。
Yahoo! JAPAN トップページを Atomic Design と React・Redux・TypeScript で作り変えたお話
•バックエンド
バックエンドの言語はフロントエンドとは異なり、多種の言語が使われております。
しかし、現環境ではJavaがとても強いです。
Javaが主に使われる理由は3つあります。
一つ目の理由は、セキュリティが強固なアプリケーションを作ることができることです。ITシステムは例えどのようなものであったとしてもセキュリティを考えて作られます。そのため、セキュア(安全)なアプリケーションを作ると考えた際には技術選定の際にJavaが使われることは多々あります。
二つ目は、技術者が多いことです。システム開発で人員を確保するまた、個人的な理由で担当していたエンジニアがそのプロジェクトを抜けてしまっても代わりの人員を探すことが楽になります。
三つ目の理由は、新しいフレームワークも開発されているということです。技術は圧倒的に便利で安全なものが開発されると、技術者はそちらに流れていきます。しかし、Javaは長い間生き残っており、今も現役で使われています。その理由は新しいフレームワークが開発され続けているということでしょう。
SpringBootといった堅牢なアプリケーション容易に作れるようになっていることからJavaは今後も人気が高い言語として残り続けるでしょう。
上記に挙げた通りバックエンドの業界においてJavaはとても高い使用率ではありますが、日本初の技術であるRubyや機械学習分野で強いPythonもWEBアプリケーションを作ることができるます。
また、フロントエンドのところで触れたJavaScriptもNode.jsというフレームワークを使用することによってバックエンド(サーバサイド)も作ることができます。そのため、初学者は迷ったらフロントエンドもバックエンドもできるJavaScriptをとりあえず触ってみるのはいかがでしょうか。
まとめ
WEBアプリケーションエンジニアになりたいならばとりあえずJavaScriptを触ってみよう。