【社会人向け】エンジニアに転職するまでの過程をまとめてみた

 

プログラミング初心者「プログラミングを勉強しはじめたけど、何から進めればいいのかよくわかんないな…。なにかおすすめの学習方法があったら教えて欲しい。実際どのレベルまでできたら転職できるのか、そこについても教えて!!」

 

今回の記事ではこんな疑問に答えていきます。

 

こんにちは、エンジニア兼プログラミング講師のきせき(@swim_pg)です。

 

僕は主にプログラミング系のことを当ブログやツイッターで発信していますが、最近はよく上記のような方からプログラミングのことについて質問を受けることも増えてきました。

 

もうね、めちゃくちゃ多いんです。

 

10人質問してきたとしたら8〜9人はこの質問です。

 

ただ僕も未経験からプログラミングに挑戦して転職した経験を持っているので、その気持ちはすごいよくわかります。

 

学習したての頃ってまじでなにがなんだか分からないし、知ってる人が近くにいても初歩的なことって聞きづらかったりしますよね。

 

なので今回は、僕が考える「転職を目標としたときのプログラミング学習方法(社会人向け)」について書いていきます。

 

少し長めの内容になっていますが、しばしお付き合いいただけると嬉しいです^ ^

 

 

プログラミングってそもそもなに?

 

これからプログラミングを勉強する予定だよ!って方のために、そもそもプログラミングってなんなの?ってことについて書いていきます。

 

ずばり一言でいうと、”機械”に対して”命令”をさせることです。

 

プログラミングを勉強していると、よくコードを書くなんて言葉を使いますが、これは「命令をするための文章を書いている」ということなんですね。

 

その文章自体は機械が読める言葉で書かなくてはならないのですが、これがプログラミング言語ということになります。
 
実際にはこのプログラミング(機械への命令)を行うことで、

 

ホームページを作成したり、

 

Webサービスをつくったり、

 

スマホアプリをつくったりできるわけなんですね。
 
ただ、僕も最初にそれを聞いた時はなにそれ?って感じだったので、「パソコンへの命令を書いてるのか〜」くらいでいいかと。

 

 

 

プログラミング学習の手順

 

さて、簡単にプログラミングの概要を説明したところで、さっそく学習の手順について書いていきます。

 

以下に学習手順の大枠を記載したので見てみましょう。

 

こちらは会社に勤めながら転職を目指す人だと仮定して、だいたい半年くらいを目安に考えています。

 

  1. なにをつくってみたいか考える
  2. どの言語を勉強する必要があるのかを知る
  3. 学習サービスで基礎を学ぶ
  4. udemyでアプリをつくってみる。またはすでにあるアプリのクローンをつくってみる
  5. オリジナルアプリの開発・公開
 
 

 

なにをつくってみたいか考える

 

まずはゴールをイメージするために作ってみたいものは何か考えてみましょう。

 

先ほども書いた通り、ホームページ、Webサービス、スマホアプリなど、プログラミングで作れるものはたくさんあります。

 

なにをつくるかで学習すべきことが少し変わってくるので、本格的な学習に入る前に考えてみてください。

 

とくに作りたいものがないって方は、「自分がプログラミングを活かしてどんな働き方がしたいか?」という点で考えてみるのもいいかもしれません。

 

僕がプログラミングに挑戦した時も、実はつくりたいものがあったわけではなく、

 

  • 満員電車乗りたくない
  • 二度とテレアポしたくない
  • そこそこお金は欲しい

 

という願望はありました。

 

なので、リモートで仕事ができて、かつ給与水準が高いエンジニアを目指したという経緯があります。
 
もしこの記事を読んでいるあなたが僕と同じような働き方を考えているのであれば、Web系のエンジニアを目指すのがいいかと思います。
 
Web系の会社は自由度が高い会社が多く、リモートや時短勤務などを積極的に取り入れている会社も増えてきています。

 

 

どの言語を勉強する必要があるのかを知る

 

つくりたいもの、もしくは自分の理想の働き方を考えたら、次はそれを実現するためにどの言語を学ぶべきなのかを調べてみましょう。

 

日本語、英語、中国語と人間が使う言語にもたくさんの種類があるように、コンピュータで使われる言語にも色々な種類があります。

 

具体的に書くと以下のようなイメージです。

 

ホームページをつくりたい!

  • HTML / CSS
  • JavaScript
  • jQuery
  • PHP

 

ツイッターやインスタグラムみたいなWebサービスをつくりたい!

  • HTML / CSS
  • JavaScript
  • jQuery
  • Ruby / PHP / Python
 

スマホアプリをつくりたい!

  • Java
  • Swift
  • ReactNative※この中のどれか1つで作成可能

 

それぞれつくるものによっては変わる可能性もありますが、大体こんな感じかとイメージが持てれば問題ありません。
 
「えぇ、ホームページつくるのにもこんなに色々覚えないといけないの?」
 
って考えた方もいるかと思いますが、それぞれの基礎さえわかっていればつくることは可能なので、そこまで身構える必要はありません(^ ^)

 

 

学習サービスで基礎を学ぶ

 

どの言語を勉強するか決まったら、ようやくプログラミングを学習していきます。

 

ここで僕がおすすめしたいのは以下3つのサービスです。

 

  • Progate
    ~> すぐにコードが書けるので勉強したての初心者に最適。
  • ドットインストール
    ~> 動画サービス。3分で1レッスンと短い時間でインプットしやすい。
  • Schoo
    ~> こちらも動画サービス。1レッスンあたりが長いが、ダウンロードもできるので通勤時間などにインプットするのに最適。
 

 

まずはこれらのサービスを使って、基礎を学習していきましょう。

 

イメージとしては、ドットインストールやSchooを使ってインプットしつつ、Progateで実際にコードを書いてみるのがおすすめです。
 
Schooは動画をダウンロードできるので、通勤中のヒマな時間でもプログラミングを勉強することができます。
 
とはいえいきなり動画を見まくったりコードを書き続けたりするのもハードルが高いので、まずは短時間でいいのでなにか1つ勉強してみることを意識しましょう。
 
動画を5分だけ眺めてみるとか、

 

コードを1行だけ書いてみるとか、

 

とにかく最初はハードルの低いところからはじめて全然問題ありません。
 
むしろ、「10時間勉強しよう!」なんていきなり高すぎる目標を立ててしまうと継続できずにモチベーションも下がるので、これだったら確実にできそうだな〜ってラインから徐々に上げていくことをおすすめします。
 
上記であげたProgateもゲーム感覚でゆる〜くチャレンジできるサイトなので、1日1レッスンとかを目標にしてみてもいいかもしれません。
 
1周で全部理解しようともしなくていいので、2〜3周じっくりやって基礎を覚えていきましょう!
 

 

 

 

udemyでアプリをつくってみる・またはすでにあるアプリのクローンをつくってみる

基本的な知識を身につけた後は、アプリを作って実践的なスキルを身につけていきましょう。

 

まだまだ勉強したりないと思うかもしれませんが、簡単なコードを書き続けるよりもアプリをつくってしまった方が力がつくからです。

 

ではなにを作ればいいのか?

 

タイトルにもある通り、udemy、または既存のアプリのクローンをつくってみるのがいかと思います。

 

udemyは動画コンテンツが販売されているサイトなのですが、実際的なコースが数多く販売されています。

 

セールも頻繁に行っているので、基礎を学習したのアプリ制作としてはちょうどいいかと。

 

 

もちろん既存アプリを作るのもおすすめです。

 

例えばツイッターっぽいアプリだったり、インスタグラムっぽいアプリであれば普段使っている分どうやってどんな機能があればいいのかもイメージしやすいので、既存のアプリをクローンするなら、自分が普段使ってるもので考えみると開発しやすいです。
 
クローンと聞くとなんだかオリジナリティがないような気もしますが、まずはイメージしやすいものを使って、アプリ開発全体の流れを理解することの方が重要です。

 

 
Progateではなかったような実装も必要になってくるので、ここまでできるとかなり力がつきますよ。

 

ちなみに僕が通っていたDIVE INTO CODEというスクールでも既存アプリのクローンをつくる授業があり、これでサービス開発の基礎を学習していきました。
 

 

 

オリジナルアプリの作成・公開

 

ここまできたら学習を始めたころよりかなり力がついているはずです。

 

さらにもう1つ、オリジナルのアプリをつくっていきましょう!

 

 

クローンアプリの作成だけでも転職活動への武器になるのですが、それにさらに1手間加えるだけで、他のエンジニア志望の方と差別化することができます。

 

どんな機能にしようか、

 

どんなデータが必要か、

 

などの”設計部分”から考えることになるので、自分のスキルも上がりますし転職活動での話のネタにもなるのでいいことづくしです。

 

 

そのほかの学習方法

 

 さて、ここまで学習手順について詳しく解説してきましたが、先ほどはあげなかった学習方法についてもいくつか解説していきます。

 

 

スクール

僕はスクールを経て転職しましたが、学習の手順としてそれを入れなかったのは、スクールにこだわらなくても転職は可能なのではないかと考えたからです。
 
しかし、一から独学でプログラミングスキルを身につけて転職活動をするよりは、転職サポートがついているスクールのほうが安心するのは確かですし、自分をプログラミング漬けにするために環境をがらっと変えてしまうのもそれはそれでおすすめです。
 
ただし最近はスクールも乱立してきていることに加え、そもそも講師(メンター)にエンジニア経験がなかったり、様々なブログ上でおすすめのスクールにばらつきがあるため見極めが難しくなっています。
 
なのでもしスクールを検討するのであれば、スクール経験者に直接話を聞いてみるとか、無料体験に参加してみるのがいいかと思います。
 
TechAcademyというスクールでは1週間の無料体験を行なっているので、プログラミングの感覚を身につけるには最適かと。
 
僕の通ったDIVE INTO CODEというスクールでは残念ながら無料体験はないのですが、説明会は毎日無料で行われています。

 

※土日に予約すると授業の雰囲気も見ることができるのでおすすめです。

 

 
また、僕自身もマンツーマンのレッスンをしています。

 

“完全マンツーマンで現場で活かせる知識を教える”という点に特化しているので、勉強するなら現役のエンジニアに教えてもらいたい!という方にはもってこいです。

 

料金も4ヶ月で16万円と、一般的なスクールに比べても半額なので、気になる方はご連絡していただければ詳細をご説明します。
 

友だち追加

 

 

技術書

初心者が最初から本で学習するのはおすすめしません。

 

理由としては、単純に分かりづらいからですね。

 

勉強はじめたばかりのひとにとって、プログラミングなんてまさに異世界なわけですよ。

 

プログラミングでなにができんの?コードってなに?って感じですね。

 

そんな人がいきなり高度な文章を読んでも、そりゃわかりません。

 

とはいえきちんとした知識やスキルを持った人が書いていることも確かですので、1度動画コンテンツやProgateで基礎を身につけてから、より深い部分を学ぶために本を使うのがいいかと思います。
 
 

 

勉強会

こちらはいい勉強会もあるのですが、毎回探したりするのがだるかったりするのでおすすめの手順からは外しました。

 

ただ独学に行き詰まって誰かに教えてほしいとか、気分転換したいとかであればどんどん活用すべきだと思います。

 

 

自分がエンジニアに転職した際のスケジュール

 

色々と書いてきましたが、読者の方の中にはこのように思う方もいるのではないでしょうか?
 
「まぁ手順はわかったけど、ほんとに転職できんの?」
 
そこで、僕が“未経験から3ヶ月”で転職した際のスケジュールについて記載したいと思います。

 

 

1ヶ月目(独学)

まだ会社に勤めていたので独学メイン。

とにかく早くエンジニアになりたいとは考えていたが、自分が考える自由度の高い働き方(時間とか場所)を考えると、Web系(RubyとかPHP)の方がいいことがわかった。

どうやらRubyが初心者にもわかりやすくリモート案件なども多くなっているようなのでそれを選ぶ。

Progateやドットインストールで基礎を学習。

学習当初の感覚としては、「まじでわかんねぇ、どうしよう…。」って感じ。

それでも2周3周と繰り返していくうちに少しずつ理解できるようになっていった。

 

 

2ヶ月目(スクール)

会社を辞めスクールに通いはじめる。

基礎をやっていたこともあり、授業にはついていけた。

具体的には、以下についての基礎を学習した。

  • HTML / CSS
  • JavaScript、jQuery
  • Ruby
  • Ruby on Rails
  • クローンアプリの作成

この時の学習時間は1日だいたい10時間くらい。

しかし相変わらず深いところは全然理解できない。

それどころかエラーだけで1日が終わることもあり、「おれってプログラミング向いてないんじゃないかな。」と挫折しかけることが何度もあった。

 

3ヶ月目(スクール)

卒業課題としてオリジナルアプリの制作に入る。

1からアプリを考えたことがなかったのでコードを書くことよりも、どんな機能をつけるかなどの「設計部分」にかなり手こずる。

いつもの課題と勝手が違い、全然進んでいる気がしないのが辛かったが、講師たちにアドバイスをもらいながらなんとかアプリ完成。

 

 
このような流れで学習し、転職するまでに至りました。
 
僕の場合はスクールありで転職に成功しましたが、スクールの転職サポートをつかったわけではないので、実際はスクールに行かなくても転職は可能だと思っています。
 
ただし、僕の場合は後半の2ヶ月は無職だったので、学習時間がかなり確保できたのが大きいです。
 
なのでこの記事では働きながら転職を目指すという意味で半年くらいを目安にしています。

 

 

 

 現在なにをしているか

 

僕が行なっている業務も書いておこうかと思います。

 

転職して2〜3ヶ月はコードを書くので10割を占めていましたが、1年ほど経った今では色々と任せてもらえるようになりました。
 
具体的には以下になります。

 

  • 要件定義
  • 基本設計
  • 開発
  • コードレビュー
  • PM(プロジェクトマネージャー)
  • サーバー構築
  • クライアント対応
  • インターン生の面接や教育
 
 
実務経験が浅い状態でここまで任せていただけるのも本当にありがたいと思います。
 
しかし、未経験から転職した人の中には、「テスターしかやらせてもらえなかった」とか、「最初は営業からやることになった」という声も多く聞こえてきます。
 
それらの経験が無駄だとは言いませんが、ごりごりコードを書きたいと思って入ったのに、全然違うことをやらされたらいい気分にはなりません。
 
自分のやりたい業務が明確な場合は、面接の段階からその辺りの細かい部分も質問しておくことをおすすめします。

 

 

 

まとめ

さて、ここまでたくさん書いてきましたが、再度手順をまとめたいと思います。

この手順で学習を進めていけば未経験からでもエンジニアへの転職は可能かと。

  1. なにをつくってみたいか考える
  2. どの言語を勉強する必要があるのかを知る
  3. 学習サービスで基礎を学ぶ
  4. udemyでアプリをつくってみる。またはすでにあるアプリのクローンをつくってみる
  5. オリジナルアプリの開発・公開

 

プログラミング学習は難しいというイメージが先行しがちですが、しっかりと基本的なことを抑え、アプリをどんどんつくってアウトプットしていけば自然とスキルは上がりますし、転職はもちろんアルバイトや個人で仕事をとってお金を稼ぐことも可能です。

 

僕も最初はもちろん不安でしたが、学習していく過程でどんどんわかることが増えていきましたし、エンジニアの仕事が有り余っていることもわかったので就職の不安はほぼ消えました 笑

 

まずは簡単なコードを書くところからでいいので、5分だけでもプログラミングに挑戦してみましょう。
 
記事内でわからないことがあればLINE@でもお答えしますのでご連絡してください。

 

友だち追加

 

 

ここまで読んでいただきありがとうございました。

 

 

 

完全マンツーマンのプログラミングレッスンはこちら!

 

完全マンツーマンのプログラミングレッスンやってます。

詳細は以下のバナーをクリック!

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です