どうも、フリーランスエンジニアのりゅうけんです。
ここ数年、Webプログラマーになりたい人が爆発的に増加しています。ITエンジニアの人手不足からエンジニアの需要が高まり、高収入化してきたことが最大の理由といえます。中には20代で月収100万円を達成している人もゴロゴロいて、まさに今が旬の職種といえるでしょう。
Webプログラマーは、インフラエンジニアや組込みエンジニアに比べて非常に学習がしやすい環境にあります。用意するのは自分のパソコンのみ。ソフトウェアは自宅のパソコンに無料でインストール可能なものが多いし、動かすこともデバッグすることも簡単。
最近では、オンラインの学習サービスやプログラミングスクールも増えてきてて、言語習得へのハードルはますます低くなっている状況です。
これは、社会が「Webプログラマーになれ!」って言っているようなもんです。
ただ、Webプログラマーと一口にいっても、使用するプログラミング言語は多数存在していて、「どれを習得すればいいの?」って迷うこともあるでしょう。レガシーな言語を学んでも損はないけど、やっぱりトレンドとなる技術を習得しておくのが一番の近道だからね。
そこで、今回はWebプログラマーになるなら習得しておきたい言語をピックアップしてみました。Web系のプログラマー目指す人はぜひ押させておいてください。
目次
Webプログラミングで用いられる言語
Ruby
Rubyは日本で開発されたオブジェクト指向型のスクリプト言語です。
Rubyが言語の設計段階で重視されてきたのは、「ストレスなくプログラミングを楽しむこと (enjoy programming)」であり、初心者にも覚えやすいことが大きな特徴。Webアプリ開発時には「Ruby on Rails」というフレームワークを使って、サクサクと開発ができるのも大きな魅力です。
Rubyで作成されている代表的なWebアプリは、「Cookpad」「CloudWorks」「Hulu」などが挙げられます。
PHP
PHPは、日本のWebアプリ開発において、もっともよく使用されるスクリプト言語の一つといえます。
それもそのはず、PHPはWebページを動的に生成するために作成されました。その軽量さと手軽さでシェアもトップレベル。日本語のドキュメントも充実しており、初心者でも開発をしやすい言語といえるでしょう。
PHPで作成されている代表的なWebアプリは、「Facebook」「WordPress」「Wikipedia」などが挙げられます。
Python
Pythonは最初のオブジェクト指向スクリプト言語といわれており、Rubyの基礎にもなっている言語です。
元々、科学計算分野でよく使用されており、海外では多大な人気があります。一方で、日本のシェアはそれほど高くありません。習熟しているエンジニアも不足気味。そのため、Pythonを習得しているエンジニアは希少価値があって重宝される傾向にあります。
Pythonで作成されている代表的なWebアプリは「Youtube」「Instagram」「Dropbox」などが挙げられます。
Java
JavaはC言語を改良して作成された、オブジェクト試行型のプログラミング言語です。
動作が安定で、且つ高速であることが特徴。シェアもエンジニアからの人気もトップレベルを誇っています。
Javaは企業の社内システムに採用されていることが多いです。以前はWeb系のフレームワークが多く、作り方がまちまちでいろんなことを覚えないといけない傾向があったけど、近年は「Spring」フレークワークがトレンドとなっていて、統一感が出てきています。androidアプリもJavaを使っているので、その方面に興味がある人もとりあえず習得して損はないでしょう。
Javaで作成されている代表的なWebアプリは、「Twitter」「Evernote」などが挙げられます。
C#
C#は、Microsoftが開発したオブジェクト指向型プログラミング言語です。
使うのはWindows環境が主体となるけど、Windowsに搭載されている .NET Framework が強力でプログラミング効率が非常に高いのが特徴。言語の仕様も積極的にアップデートされており、トレンドを取り入れるのが早いです。
C#で作られたシステムが多く採用されているのは、やはり業務でWindowsをよく使用する大企業です。特に基幹システムなどの重要なシステムになると、サポートを受けながら作ったりするけど、それは大手じゃないと難しい側面があるからね。
代表的なWebアプリについては、これと特定できる情報は見つからなかったけれども、「Microsoft製のWebサイト」「Microsoft製のWebサービス」が全般的に該当するでしょう。
Rubyがおすすめ!
Webアプリで使用されるプログラミング言語をいくつか挙げてみたけど、今からWebプログラマーになりたい人におすすめしたいのは、やはり「Ruby」です。その理由は以下の通り。
学習しやすい
Rubyは日本で作成されたプログラミング言語であることから、日本語のドキュメントが充実していることが学習しやすい最大の理由です。Webアプリ開発時に使用される「Ruby on rails」は海外製だけど、こちらも日本語のドキュメントが多くて、やっぱり学習しやすい。
実際、プログラミング言語の習得時につまづく要因として、日本語のドキュメントが無いことがたびたび挙がります。英語が得意な人は全然困らないと思うけど、そうでない人の方がまだまだ多いのが実情。でも、Rubyに関してはその辺りの心配は無用というわけです。
また、言語的に書き方に制約を設けていて、人によってコーディング方法ができるだけぶれないようにしている。つまり、誰が書いてもほぼ同じコードになることを意味しており、他人のソースコードの可読性が非常に高くなることに繋がります。ということは、学習時に参考するソースコードが読みやすく、自分のものにしやすいというわけ。若者受けもいいので、一緒に学習をする人も多くて、互いに切磋琢磨してスキルを伸ばしていけるのも大きいよね。
つまり、プログラミング言語を学習する時のメリットを最大限に享受できるのがRubyといえるでしょう。
案件数が増加傾向
2018年9月時点でレバテックフリーランスの案件数を調べたところ、以下の通りでした。
- Java:223件 / 1192件
- PHP:156件 / 1192件
- Ruby:79件 / 1192件
- Python:60件 / 1192件
Rubyの案件数は、JavaやPHPにはまだまだ敵いません。けれども、もはやマイナー言語とはいえないほどの案件数を叩き出しており、今後も増加傾向にあります。
Rubyの案件数が増加した理由は、Webアプリの開発に使用する「Ruby on Rails」が非常に強力なフレームワークで、効率化、開発費用の削減に繋がっているから。特にベンチャー企業やスタートアップ企業に好まれていています。こういった企業は、やはり速度感を求めているので、RubyとRuby on Railsはファーストチョイスともいえる代物になっているのでしょう。
自由な働き方がしやすい
上でRubyの案件数について記述しましたが、全体の約6%〜7%を占めています。これはフリーランスに向けた仕事だけですが、それだけでも、まずまずの案件数が存在しているということですね。
また、同じレバテックフリーランスから、週3案件を確認したところ、2018/9/27時点で13件中5件はRubyが関係する仕事でした。絶対数が少ないので参考程度ですが、自分の働きやすさを求めやすい言語であることがいえます。
そもそもWebアプリの案件って、作成する開発環境さえ整えば、場所を選ばずにできる仕事です。つまり、自由な働き方ができる土台をそもそも備えている。まずはRubyを学んだ後に、他の言語も習得してしまえば、自分の求める働き方がどんどん近づいていくこと間違いないでしょう。
Rubyが学べるプログラミングスクール
というわけで、格安で高品質なRuby学習環境が整っていて、おまけに就職サポートまでついているスクールを厳選してみました。▼
これらのスクールでやってることを簡単に言えば、「エンジニアの養殖漁業」みたいな感じです。未経験者を現場でそこそこ通用するレベルまで育てて企業に送り出し、企業から手数料を得るというビジネスモデル。
逆に就職サポートが付帯している方が企業からお金を引っ張ってこれるので、受講料自体を無料とか格安に設定できるわけです。
正社員就職後はぶっちゃけ大して給料よくないです。年収でいうと300万〜400万前後。ただし、Rubyエンジニアなら1年ぐらい現場経験積んでさっさとフリーランスになってしまえば月単価80万円以上取れたりするので、それまでの下積み期間と考えるのが良いと思います。
さいごに:エンジニアになるならWeb系からがおすすめ
エンジニアになるなら、学習環境も整備されていて、自宅でも学習がしやすいWeb系エンジニアからがおすすめです。
Web系プログラマーは、単なるプログラミング言語だけでなく、SQLやJavaScriptなど、データベースやフロント側の技術も求められていくけど、まずは一つの言語を徹底的に勉強していくことが最短ルートです。言語を一つ覚えれば、他の言語の習得までの時間が大幅に減少するからね。そのレベルに達するまでは、ひたすらコーディングができる環境に身を置いて、スキルレベルアップを図ってください。
そういう意味でも、今回紹介したプログラミングスクールで言語を効率的に習得して、さっさとWebプログラマーになるしかないでしょう。2〜3年でも経験を積めば十分フリーランスエンジニアの道も開けるし、月収100万円の高報酬も夢ではないですからね。