勉強方法

未経験から独学でRailsエンジニアに転職するために必要な5つの技術とその勉強方法

こんにちは、とだ (cohki0305) です!

僕はまったくのプログラミング未経験から Rails エンジニアになったのですが、

今日はRailsエンジニアになるためにどういった知識が求められるのか、そしてそれをどうやって学べるのかについて紹介します。

憧れのエンジニアに転職したいけど難しそう…と思っている人!経験者の僕から言わせると、正しい努力をすれば難しくない!ですよ!

Rails エンジニアになるには、スキルが必要だ!

今は人手不足なので、どこの会社もコードが書ける人が喉から手が出るほどほしいです。でも、だからといってコードを少しかけるだけで採用されるというわけではありません。

やっぱりエンジニアを雇う際に気になるのは、スキルです。

僕も会社で採用活動に関わっていたのですが、採用する際に最も重視するのはスキルです。完全に必要条件です。

スキルがない人を雇うと教えるのに時間を使ってしまい、結果的に開発速度が落ちるからです
さらにはバグも生まれて、保守性も下がり、将来的な開発速度も落ちてしまう可能性があります…

なので、エンジニアにはスキルが絶対求められます。

Rails エンジニアはどういうスキルが求められるのか

さて、では Rails エンジニアにはどういったスキルが求められるのでしょうか!

僕は最低限でも以下 5 つは絶対必要だと考えています。

  1. Ruby
  2. Rails
  3. Git / Github
  4. Javascript
  5. Web の基礎知識

えーこんなにあんのかよーと思った人!

これは本当に最低限ですよ!他にもインフラの知識、デザイン、SQL、Linux などなどいろいろなことを求められるのですよ。

でも、上記の 5 つの知識があればちゃんと Rails エンジニアとして仕事ができます。結構数は多いですが、ちゃんと勉強していれば 6 ヶ月もあればある程度マスター出来ると思います!

どう勉強するべきか、失敗から学ぼう!

ただ勉強の仕方を間違うとめっちゃ時間かかります!倍以上かかる可能性はあります、最悪挫折してしまいます…

僕は独学だったので、まさにどうやって勉強したらいいのかわらず、闇雲にいろんなものに手を出し勉強時間を無駄にしました…

本買ってみたけど、レベルにあってなくて、全然わからずに積んでしまったり…写経はするものの、全く意味わかってないから全然勉強にならなかったり…

ただ良いこともありました。それは、

いろんなことに手を出したから、めっちゃいろんな本や勉強サイトを知っているwww

ということです!

僕は失敗したので、皆さんにはいい勉強方法をしてほしいなと思っています!

ということで各技術についてどう勉強するべきか紹介していきます。

Ruby

Ruby がどんなものか知ろう

まずは Ruby がどんなものなのか基礎の基礎を知りましょう!

最初は Progateドットインストールなどから入るのがおすすめです。

※ Progate とは、オンライン上でコーディングを勉強出来るサイトです。
※ ドットインストールは、プログラミングの学習を動画を通して行えるサイトです。

これらの一通りやったら、Ruby をどうやって書くのかなんとなく雰囲気がわかるようになると思います!

Ruby を一通り勉強しよう

これらのサービスである程度知識がついてきたら、基本書を買って一通り勉強することをおすすめします。

Progate やドットインストールはカリキュラムがかなり限られているので、基本書を買って一通り勉強しておくのも大事です。

オススメは「たのしい Ruby」です。本当に楽しく Ruby を勉強できるのでおすすめです。
※ もしこれが難しいと思えるなら、Progate やドットインストールで復習しましょう!

たのしい Ruby よりももう少し発展的な書籍がほしいという方には「Perfect Ruby」がおすすめです。これをマスターすれば Ruby は本当に Perfect になると思います!

内容的には発展的なので、中級者向けです。ただ、辞書的にも使えるので初心者の方も購入しても損はないと思います。

ちなみに最近新しい版が出たので、僕も購入しました。ネットの情報よりまとまっているので、辞書的に利用しています。

Ruby を自分のものにしよう!

ある程度知識がついても自分でコードを書き続けなければ、なかなかプログラミング技術は身につきません。今度は、ひたすら手を動かし続けましょう!

僕は Ruby のコードを書き続けるために Paiza を利用していました。

ITプログラマ・エンジニア向け転職・就活・学習サービスのpaiza

Paiza はいろいろなプログラミングの問題を提供してくれるサービスです。
※ 転職サイトでもあります、というよりもともと転職サイトです…

基本書は文法を覚えるには良いのですが、自分で考えてコードを書く機会があまりありません。

なので、Paiza で問題を解いて、自分でコードを書く力を身に着けましょう!レベルが S から D まであって自分のレベルにあった問題で勉強できます。

2 日に 1 回くらい C の問題を解いていると自然と Ruby の力が身についていると思いますよ最初は D から始めてみましょう!

Paiza は模範解答を用意してくれないので、自分で調べたり、よりよいコードを書く練習を自分で出来るようにもなると思います!

Rails

次に Rails です!

Rails のルールを学ぼう!

Rails に関しては Progate や Rails tutorial をなんどもやりましょう!

Rails は奥が深いフレームワークです。そしてルールが多いです…覚えることが多いです

一度やっただけで習得するのは難しいので、何度もやるのがポイントです。なんどもやっていれば間違いなく基礎力つきます!

自分でアプリを作りましょう!

そこまで知識がついたら、何か自分でアプリを作りましょう!大丈夫、何度もできたあなたならできます!自分でアプリを作るのが良いところは、Ruby でも説明したように自分で考えてコードを書くようになるからです。

これができないと仕事ではコードがかけないのですごく大事なのです。

作りたいアプリがなければ、普段あなたが使っているサービスのクローンアプリを作ってみると良いですよ!Twitter, Facebook や Trello とかなんでもいいです。真似して作ってみましょう!

もちろん、そんなに大きなアプリじゃくてよいですよ!小さいアプリでも自分で作っておけば、採用担当はあなたが Rails をかけるとわかってくれます!

Git / Github

そして作ったアプリは Github に必ず公開しましょう!

Github はソースコードをクラウドで管理するサービスで、仕事するには絶対に必須なツールです!
絶対です!!

未経験の人を採用する際に、Github の使い方まで教えないといけない?と採用担当は不安に思うので使えるとことをアピールしておきましょう!

そしてソースコードを公開することで自分の技術力を公開できるので、就職活動もしやすくなるでしょう!

そもそも Git が使えないという方はまず勉強しましょう!プログラミングを書くなら、絶対に必要な知識です。

以下のブログをちゃんと読めば、Git まったくの初心者でも理解して使えるようになると思います!
Gitなんて怖くない!超初心者向け、SourceTreeの使い方はじめの一歩!

Github の使い方をマスターしよう!

Github については以下がおすすめです。

Github を使った共同開発の仕方やサービスの性質を丁寧に説明してくれています。PullRequest の出し方や GitFlow, コンフリクトしたときの対処方法などあらゆることが解説されています。

僕も仕事をはじめる前に共同開発経験がなかったのでこの書籍で勉強して共同開発の仕方を学び、Github 使いこなせるようになりました。
(恥ずかしながら、それまで Github 使ったことなかったんです…)

Javascript

次に Javascript です。

Javascript は Web 界隈ではかなり盛り上がっています。これがなければ Web 開発できないといっていいくらいなので、絶対に勉強しておきましょう。

Javascript も Progate やドットインストールによる勉強が良いと思います。Progate で基本的な文法を勉強したのちに、ドットインストールをやりましょう。

ドットインストールでは、Javascript をつかったアプリ作成のコースがいっぱいあります。なんと 18 個もあります!

全部やる必要はないですが、興味あるやつや無料のやつをやっちゃいましょう!

それらをこなしていくうちに自然と基礎的な知識が身についているでしょう

Rails アプリで使用しよう!

Javascript も自分で考えてコードを書けるようになっておきましょう。ただ、Javascript でプラウザアプリを作るというより、Rails アプリ内で使うと良いと思います。

Javascript は Rails のアプリを使いやすくするために使用することが多いので、勉強する際も使い勝手が悪いと思ったところをJavascript で改良していくのが良いと思います。

※ Progate や Rails tutorial で Ajax 通信を勉強したと思いますが、そういった用途がおすすめです。

ES6 を勉強しよう!

また、最新の Javascript を学ぶ必要もあります。ES6 (ECMAScript 2015) という Javascript です。

実は Javascript にはいろいろな種類があるのです。最近 Web 業界では ES6 が完全に主流なのでこれの知識を絶対に身につけておかなければなりません。

「はじめての Javascript」がおすすめです。Progate やドットインストールでは ES6 のレッスンはなかったと思うので書籍で勉強しましょう。

最近僕も買いました。ES6 について詳しくなかったので勉強したかったからです。Javascript の基本的な文法やオブジェクト指向からES6 の特徴までしっかり説明されているので、これをしっかり読めば Javascript マスターできます!

オライリー本ですが、説明がかなり丁寧でかなり読みやすいです。初心者の方でも大丈夫です。

Javascript フレームワークについて

最近では、React や Vue など Javascript のフレームワークが流行っています。

これらの知識も現場でコードを書く場合求められるのですが、しっかり ES6 が書ければあとからいくらでも身につけられるので大丈夫です。Rails でもそうですが、会社によって求められる技術は絶対異なります。

それでも、基礎的な知識が身についていればいくらでも対応できるので安心してください。

一番大事なのは基礎です。

Web の基礎知識

最後に Web の知識を身に着けておきましょう。Web の知識とは、HTTP、URI、HTML、REST といったような知識です。

Rails はこういった知識がなくても Web アプリを作れてしまうすごいやつなのです。ですが、Webの基礎知識がないと今後技術を習得するのに時間がかかります

みんな知っていることを前提に技術書やネットのドキュメントも記述されているので、Web の知識がないと Web エンジニアになるのはハードルがあがります。勉強するのには書籍の「Web を支える技術」がおすすめです。

Web の歴史から基本的な知識が丁寧に解説されています。

今使われていない技術についての解説とかもあるので、そういうのは読み飛ばしても良いと思います!
ただ、HTTP、URI、HTML、REST についてはしっかり学んでください!

基礎が身につけば、Rails だけではなくて Web の勉強ははかどります!

最後に

Rails エンジニアになるには、Rails だけではなくてその他の技術もしっかり学ぶ必要があります。

これは、iPhone アプリや Android でも同じことがいえます。最初はこんなにあるのかと思って落ち込むかもしれませんが、すこしずつで良いと思います!

自分の興味があるところから勉強していって、「プログラミングが楽しいもっとできるようになりたい」と感じれば自ずとこういった知識は身についていくと思いますよ!

ちなみに、今回紹介した勉強方法は独学をする上での方法でしたが、プログラミングスクールに通うことによって効率的に技術力を身につける方法もありますよ。独学に自信がない方にはこちらのほうがおすすめです。

Rails を教えてくれるオススメのプログラミングスクールを紹介しているのでぜひ参考にしてください!

ABOUT ME
cohki0305
営業から転職し、たった6ヶ月でリードエンジニアになった最速の男。 その後半年でフリーランスとして独立し時給が4倍に。今は海外ノマドやりながら、週3フルリモート労働。 自分の経験を元に、未経験からエンジニアになる方法や業界のことを発信してます。
プログラマーになって年収1000万目指そう

学歴・職歴関係なく、数年間で年収 1000 万円を目指せる職業って何が思いつきますか??

僕はソフトウェアエンジニア(プログラマー)しか思いつかないです。

僕は実務一年でフリーランスになって年収1000万稼げるようになりましたが、別にこの業界なら普通です。学歴も職歴も関係ないです。

プログラマーを目指して稼ぎたい方は、僕が紹介している「プログラマーになるための最短ステップ 3」を是非読んでチャレンジしてください。

未経験からプログラマーになるための方法を知る