支援対象地域:札幌、仙台、関東、愛知、関西、広島、福岡


はじめに

これまで全くプログラミングに触れたことのない人からすると、プログラマーは専門の訓練を受けた一部の人たちだけがなれるものだと思われるかもしれません。さらにそれをフリーランスでやるとなると、わからないことだらけでフリーランスのプログラマーという選択肢を即座に外してしまうでしょう。しかしIT企業で活躍しているプログラマーも初めは全くの無知で経験を積んでいくうちに、スピーディーに仕事をこなせるようになっている人がほとんどです。Rubyはとても理解しやすい部類のプログラミング言語として有名ですので、フリーランスのプログラマーとしてやっていける可能性を感じるきっかけになるはずです。

Rubyとはどのようなプログラミング言語か

プログラミング言語とはなにか

プログラムを少しでも経験している方は「Ruby(ルビー)」という言葉を聞いたことがあるかもしれません。普段生活をしている中で聞くのはしりとりで「る」で順番が回ってきた時や、アクセサリー店に行った時くらいでしょう。

Rubyは日本発のプログラミング言語で、1995年から比較的長い間利用されてきている言語です。実は似たような名称でPerlというプログラミング言語がすでにあって、それに対して開発者がRubyと名付けたといわれています。

プログラミング言語というのは、コンピュータに様々な処理を実行してもらうために命令するための言葉です。人間の言語に日本語や英語、中国語など様々あるようにプログラミング言語にもたくさんの種類があります。Rubyの他に代表的なものとしてはJava、PHP、C言語、Pythonなどがあります。ただしどのプログラミング言語であっても原則英語です。Rubyも日本で開発されたからといって日本語ではない点にはご注意ください。

Rubyの特徴

Rubyの特徴を一言で表すならば初心者でも取り掛かりやすい言語であることです。人間の言語でも日本語に近い読み方をする言葉や、似た文の構成をしている言語の方が親しみやすいのと同じで、Rubyは日本で開発された言語であることも手伝ってプログラムの構造が他の言語に比べて理解しやすくなっています。また記述するコードを極力シンプルな印象を受けます。細かい字がずらりと書かれたプレゼンの資料を見せられても読み切る気にならないですが、初めてプログラミングに取り掛かるときに何千行ものコードが並べられているより、シンプルで見やすい方がやる気になりやすいです。

またプログラムというものはずっと同じ人が担当しているとは限りません。プロジェクトが移るたびに別の人に引き継がなければいけないことがあります。プログラムも人が記述していくものなので、どうしてもその人の癖が出やすく、熟練度によって差が出ます。中には難解に記述され過ぎていて引き継いだ際に解読困難になることもあります。Rubyはシンプルなため癖や個人差が出づらく、汎用性を備えている言語といえるでしょう。

Ruby on Railsの存在が大きい

RubyはWebアプリケーションに使われることの多いプログラミング言語の一つです。なぜWebアプリケーションに使われやすいかというと「Ruby on Rails」というフレームワークが非常に便利だからです。

フレームワークとは、その機能を利用するのに必要な機能(ライブラリと呼ばれます)とその使い方が定められているもの一式を表します。工作の課題で本棚を作ってくださいと言われたときに「とりあえず材料となる木材を買ってみた」というのがプログラミング言語のRubyです。「本棚作成キットを買ってみた」というのがフレームワークのRuby on Railsになります。このフレームワークは機能が豊富で、さらに日本語で開発された言語だけあってWeb上の日本語での解説や参考資料も充実していて開発のスピードアップに繋がるため人気です。

現状におけるRubyのデメリットとして目立ったところでは、開発費がPHP言語より高くなる、処理速度がやや遅めといった評価もあり、分野によってはあまり歓迎されないところがあるのも事実です。しかし、プログラミング言語は改善が加えられていくものです。Rubyはオープンソースと言って、ソースコードが公開されていて誰でも自由に修正等が行える言語であるため、改善されていく可能性は十分にあります。昨今の動向を見る限り、その需要の減少を悲観視する必要のない言語の一つです。

Rubyを利用したサイトはどういったものがあるか

開発にプログラムとしてRuby言語を使っている具体例を紹介していきます。他のプログラムと比較して格段に構築をスピードアップできる点から、独立開業を行う際のスタートアップに使われる傾向があり、新しい企業での利用が目立ちます。目にする機会が多いサイトとしては、Cookpad、食べログ、CrowdWorksがあります。以上は日本の企業ですが、海外でもHuluやGithub、Shopifyなどが挙げられます。

このように挙げてみると大手企業で使われているため、今後もこれらを参考にして開発を進めていく企業も現れてくると予想されます。Rubyプログラマーの需要もこれに比例して増えてくる可能性があります。

Rubyプログラマーの需要はあるのか

直前に挙げたように有名サイトでも利用されているRubyは、プログラマーの需要も少なくありません。同じプログラミング言語の中でJavaはまだまだ根強く、案件の数も断トツで多いですが、そのあとのPHPとRuby、Pythonは同じラインに位置しています。PHPもどちらかというと古くから使われていて根強い人気が残る言語ですが、PythonはRubyに競合すると言われている言語で、Webアプリケーションの開発に使われることはもちろんのこと、ここ数年で目覚ましい進化を遂げてきたAIやビッグデータを扱うプログラムに利用される傾向があります。この分野も将来性が期待されるところではありますので、PythonとRubyは今後もしばらくその需要を競っていくことになると思われます。

正直なところ、Ruby言語単体で見ていった場合のプログラマー需要に決定的な優位性は今のところありません。しかしながら非常にシンプルであることがプログラマーへの導入言語として最適であり、慣れてきたらその他言語の習得を目指して、さらには他言語での案件を獲得していくというステップを見据えると、案件獲得に有用な言語と見ることができます。今後、Rubyでなければ実現できないという分野が出てくるのであれば、当然ながらRubyという言語自体の価値も上がり、さらなる需要が生み出されます。

Rubyプログラマーとしてフリーランスでやっていくことは可能か

繰り返しにはなりますがRubyは記述方法や参考コード、使用例がネット上にも多くあります。フリーランスでプログラミングを独学で始めていくとなった場合には情報も自分で仕入れていかなければいけません。他の言語同様に参考書や講座ももちろんありますが、初期投資も極力少なくしたいのであればネット上で情報が入手できることは大きな利点となります。また実行するためのツールも無料で手に入り、開発する環境も特にお金をかけずにできます。

もう一つも独学していく上でのメリットとなりますが、Rubyは初めてプログラミングを行うのに最適な言語という点があります。プログラミング言語はたくさん存在しているのですが、各々の言語で表現の違いはあれど、その構造自体が大きく変わるということは滅多にありません。そのためシンプルな言語でプログラミングに慣れてしまえば他の言語を独学する際も学習時間の短縮ができるのです。フリーランスで仕事をしていると学習に時間を費やせば費やすほど稼ぎの減少につながりやすくなります。両立させていくためにも学習時間の短縮は欠かせません。

JavaやPHPと比べてRubyはまだまだ広く使われるようになってからの歴史が浅いですが、その分将来性にも非常に期待できます。フリーランス専用の求人サイトで検索すると実際にRubyでの開発と記載された内容を多く見ることができます。

なおフリーランスのプログラマーとして求人を探していく場合にあらかじめ知っておきたい点として、勤務する場所があります。フリーランスというと自宅やカフェなど自由な場所で仕事ができると思われがちですが、プログラマーなどのエンジニア系の案件に関しては契約先に常駐が必要となる場合もあることにご注意ください。

またRubyは学習範囲の短縮が図れると紹介しましたが、RubyはWebアプリの開発に使われることが多いため、プラスで必須となる知識が出てきます。Web関連の開発ではHTMLやCSSといったマークアップ言語やJavascriptといったプログラミング言語を頻繁に使います。そのため、案件に取り掛かるにあたってはこれらの混合知識が必須となる可能性が非常に高く、初めは併せて学習することが必要となります。ただこれらはプログラミングを行うにあたっての基礎知識と言っても差し支えない部分なので、一度習得してしまえば今後も決して無駄になることはありません。

なおフリーランスのRubyプログラマーとしての年収ですが、プログラミング言語の中でも高収入な方とは言い難いです。それでもプログラマーとして始めるには十分であり、500万円程度が平均というデータが見られます。一から1,000万のフリーランスプログラマーを目指したい場合の入り口としては過不足のない範囲ではないでしょうか。

まとめ

Rubyはプログラムの初心者から上級者まで幅広く利用できる言語です。シンプルであるからこそ汎用性も高いので、特にスピーディーなシステム開発に好まれる傾向にあります。ただしフリーランスとしてRubyのプログラマーを始める場合、一つの言語だけで案件を獲得していこうとすると件数が限られてきてしまいます。どのプログラミング言語も同じですが、他の言語と併せて対応できるようになっておくと、さらにフリーランスのプログラマーとしての強みとなります。まずはフリーランスプログラマーの取り掛かりとして、Rubyから始めてみてはいかがでしょうか?