この記事のタイトル通り、私は全くの素人から3ヶ月独学した結果、IT会社にSEとして採用されました。IT転職サイトやエージェントに登録した事がある方なら分かると思いますが、実は日本には未経験でも採用してくれるIT会社がたくさん求人を出しているんです。
それぐらい今はITに関わる人材が不足しているんです。
でも、面接に数人来られた場合、面接官からしたら全く右も左も分からない人よりも、ある程度知識がある人が来てくれた方が、一から教育するのにかける時間も少なく済みますよね。学歴で条件が低くても、ちゃんと勉強をしてきた後者の方が向上心があると感じますし、即戦力が高いと評価されると思います。
では、私がIT企業への転職に向けて、どのように勉強をしていたか、どんな教材やウェブサイトを利用していたかを詳しく教えたいと思います。
自分と相性が良い教材を見つける
一からプログラミングを学ぶ為には、基礎がちゃんとわかりやすく説明された教材やサイトを見つけることが大事です。
私は、ネットだと情報がありすぎて逆にわかりづらいと思ったのと、本にメモを書いたり、大事な部分をマーカーで強調しながら勉強したい派なので、入門者用の勉強本を購入して勉強していました。
ネットで調べても数え切れないぐらい初心者用の勉強本が売られていますが、大きく分けると「辞書のような様々な単語や機能の説明を並べたもの」と「マニュアルのように基礎から実行しながら応用まで会話式で学んでいくもの」の2種類があります。
勉強が苦手な私が勧めたいのは、後者です。実は私が初めて買った本は、前者のものでした。やっと全部読み終えても、例えば「if文はどういう時に使うのか」と聞かれても、実際に自分の言葉で説明できるほど理解できていなかった。
リベンジで今度はちょっと雰囲気が違うものを買ってみようと目に止まったのが、後者タイプの勉強本でした。
やっぱり、長々と説明が書かれたものは初めてプログラミングを勉強する人からすると、読んでるだけじゃ理解しづらく、何が分からないのかが分からない状態になります。説明が会話式の方が圧倒的に頭に入っていきやすいと感じました。そして、実際に手を動かしながらやってみた方が身につきやすいのは、誰もが経験したことがあるのではないでしょうか。
私のゴリ押し勉強本
私が実際に現場でも通用するぐらいまで取得できたのは、何と言っても「スッキリわかる」シリーズの勉強本のおかげだと思います。
このシリーズは、ちょっとおバカキャラなプログラミング未経験の湊くんに自分を当てはめながら(笑)会話式の説明を読んで学んでいきますが、セクションごとに最後に問題も用意されていて、自分の理解度をこまめに確認できるんです。
そして、文章だけで分かりづらいものに関しては、図で丁寧に説明されているのも、非常に良かった。
スッキリわかる SQL入門
私はこのシリーズの「SQL入門」を最初に買いました。
プログラミング初心者にはハードルが高い複雑な環境設定をする必要もなく、提供された「dokoQL」という専用のWebサービスにアクセスすれば、PCや携帯からどこでもすぐに学んだ事を練習できます。
SQLは、この記事にも書いた通り、独学で取得するべき言語の一つです。この本を見ながら「dokoQL」で実践していっただけで、机上学習では身に付けにくい部分もしっかりと覚えられるようになりました。
スッキリわかる Java入門
その後、Javaも学びたいと思い、「SQL入門」の分かりやすさからの期待を胸に、同じシリーズの中にあった「Java入門」を買いました。
その結果、予想通りに分かりやすかったです。600ページ以上もある為、見た目はすごく分厚いのですが、あまりにも読みやすかったのでスラスラとあっという間に読み終わりました。
開発でよく使われる「オブジェクト指向」についても、非常に分かりやすく説明されていて、逆になんでオブジェクト指向をちゃんと理解できない人がいるんだろうと思ったぐらいです(^^;)
スッキリわかる Java入門・実践編
「Java入門」の続きとして出版された「Java入門・実践編」では基本を覚えた後に、さらに現場で実践用の知識を勉強できるものです。
アジャイルやラムダ式など、今まで聞いたこともなかったことまでも学べて、知識拡大のために読んで良かったと思いました。
現場で「これどういう事だっけ?」と思った時の為に辞書がわりとして持っておくのも良いなと思いました。
スッキリわかる サーブレット&JSP
「Java入門」を初めて買った時からずっと気になっていたツイッター風のアプリが作れるという本書は、知識をつけながら最終的にJavaとデータベースを駆使したウェブアプリケーションを作成できる内容になっていて、
1)実際にプログラミング言語がどういう風に開発に取り入れられていってるのか
2)ウェブアプリがどういうロジックで成り立っているのか
をしっかり理解できたのは非常に良かったです。
更に、Java初心者が特に苦戦しやすいとよく聞いてたEclipseの環境設定も、この本のおかげでやっと動かせるようになれたのも、嬉しかったです。
練習しながら学べるオンライン学習サイトを利用
Codecademy
私がよく利用したサイトは「Codecademy」という英語サイトです。難しい説明がなく、シンプルにステップbyステップで見本にあるコードを書きながら学んでいくスタイルなので、英語力がそこまでなくても利用できます。
HTML、Python、Ruby、Javaなどのたくさんのプログラミング言語の入門コースのほとんどを無料で学べますし、もっと詳しく学びたい場合はWeb開発やデータサイエンスなどを学べる有料コースも利用できます。
ちょっと学んでみたい言語があったら、このサイトの無料コンテンツだけでも十分に雰囲気を掴めるので、興味があったらぜひお試しください。
将来的に海外就職を目指しているのでしたら、英語の勉強にもなって一石二鳥ですね。
もちろん、海外就職を目指していない方も、仕事上でエラー解決法を調べる際は英語で検索した方が圧倒的に情報量が多いので、プログラミングに関する英語に慣れるためにも、このサイトで勉強することをお勧めします。
URL: https://www.codecademy.com/
freeCodeCamp
このオンライン学習サイトは独学期間中は知らなかったけど、イギリスの大学院の友達がおすすめしてくれて、現在PythonとCSSを独学するのに利用しています。
一画面ずつ説明を読んで、すぐにブラウザ内でコードを試せるのがとても気軽にできて、自分のパソコンに環境を作る面倒がないため、初心者にすごく優しいです。
完全に無料なのに海外就職において需要が高いPython、SQL、JavaScriptなどのプログラミング言語を学べて、しかも資格が取れるコースもあって、上級コースになるにつれ有料にするサイトが多い中、ここは「本当に無料でいいの!?」と思うぐらい実に素晴らしいです。
特にWeb系開発用の言語やスキルが豊富で、Web系の技術に興味がある方はぜひお試しください。社長のQuincyさんが毎週送ってくるメールにも結構役に立つことが書いてありますので、英語のリーディングの練習としても読んでみるべきです♫
URL: https://www.freecodecamp.org/
おわりに
プログラミングの勉強だけに関わらず、本当に身につけるには、机上学習よりもとにかくたくさん実践する事なんです。
私が紹介した「スッキリわかる」シリーズや、学習サイトを大いに活用してみてください。
また、本を読んでも、学習サイトで学んでもよく分からない事があった場合、積極的にネットで検索するのもコツです。
ネットには親切に解説をしてくれるサイトがたくさん転がっているので、ちゃんと理解できる回答が見つかるまで、どんどん調べましょう。
もし、私が実践した勉強法が合わなさそうでしたら、手っ取り早く就職サポート付きのプログラミングスクール(もしくはブートキャンプ)などに通う手もあります。
おすすめプログラミングスクール①:
まず、個人的におすすめしたいプログラミングスルールの一つ目はテックキャンプという会社です。
未経験からエンジニア転職までサポートがめちゃくちゃ豊富なのと、インフラもバックエンド、フロントエンドまで一通り学べるので、就職の幅もグンっと広がるし、将来的にフルスタックデベロッパーになるのを視野に入れてるなら絶対に今から基本知識を身に付けとくと後が楽だと思います。
全額返金保証があるのも安心ポイントの一つですが、参加するかどうか決められない場合、無料説明会に参加して詳しい内容を聞いたり、不安な点を相談してみるといいと思います。
おすすめプログラミングスクール/ブートキャンプ②:
上記のテックキャンプと同じく就職サポートがしっかりしてる理由で選んだ二つ目のおすすめプログラミングスクールはTech Boost という会社になります。
エンジニアの人材領域に特化した人材紹介サービス付きなのも魅力的ですが、海外でも近年特に需要が高くなってきてるAIやIoT、ブロックチェーンなどの最先端技術も学べられるようなので、基本的なアプリ開発よりも難易度は高いかもしれませんが、海外での就職率はが高くなるので、海外移住の夢を諦められない方は絶対に最先端技術にチャレンジする価値があります。
こちらの会社も無料説明会の参加を受け付けているみたいなので、ぜひIT企業への転職においての不安点を相談しにいってみるといいと思います。