OLからエンジニアになるまでの勉強方法

2018-03-25

OLからエンジニアになってから1年が過ぎました。
ここでIT未経験から経験者になるまでの勉強順番、方法をまとめてみました。

狙ってこの流れにしたわけではなく、結果的にこの順番になったのですが、これからプログラミング勉強してIT業界へ行こうとしている人は、方法のひとつとして参考程度に読んで頂けたらと思います!

1.VBA

VBAはOL時代に、Excelでの仕事をマクロで自動化したくて覚えました。
現在、非IT業界で働いている方でも仕事でExcelを良く使う方は、仕事中にプログミングができるし、Excelの処理を自動化出来て作業効率もあがるので、VBAを覚えるのは一石二鳥だと思います!

IT業界に来てからも、仕事用のツールを作るときに(ただしWindowsに限る)VBAは使うので、一度やってみて損はないかと思います!


ちなみにVBAの勉強自体はプライベートでは一切やらず、全て仕事中にやっていました(笑)


1.プログラミングが分かる後輩がいたので基礎部分を教えてらもらう。
 ※教えてもらったのは変数とは何かと、if,forの使い方くらい

2.その後輩が書いたソースを見せてもらい、真似しながら自分がやりたいプログラムを書いてみる

3.あとはやりたい処理が発生した都度ググる!とにかくググる!

4.どうしてもわからない時はその後輩に聞きに行く


言語問わず、プログラミングの勉強は全てこの上記の流れで出来ていると私は思いますね。
最初は人の真似をして、あとは応用していく!
ちゃんと基礎から勉強したわけではなく、作りたいものが決まっていてそれに必要な文法や知識を覚えていったという感じです!



2.Java

IT業界へ転職し、転職先の研修で一番初めにJavaを学びました。
今までのVBAはなんとか動いているレベルでしたので、ここで初めて講師に教えて頂きプログラミングの基礎から学びました。

Javaはオブジェクト指向で、型の宣言もきっちりしている(文法にうるさいと私は思っている)言語なので、
初めにこれをきっちりやっておけば、他の言語の勉強も楽にできると思います。

研修だったので、勉強方法は、

1.文法のテキストを読む

2.テキストに書いてあるコードを写経して動かしてみる。

3.章末問題を解く。

4.講師と問題の答え合わせ&ソースレビュー。または分からないところを講師に聞く

基本的に一人でテキストを進めて、分からないところを聞くという、もくもくやるスタイルでした。
(プログラミングスクールもこんな感じが多いのではないでしょうかね)

勉強時間は、7時間/日×約15日くらいなので、約100時間ほど。



3.HTML・CSS

Javaの基本文法を身に付けたら、JavaでWebアプリをつくるカリキュラムだったのですが、その事前知識としてフロントサイドでは欠かせないHTMLとCSSをやりました。
これを知らなければ見た目は作れませんからね。

頂いたテキストがチュートリアル的な、読み進めて課題を解いていくと1つのWebサイトが出来上がるものでした。
HTMLは学生の時に少しやったことがあって知っていた部分もあったのと、最低限必要な基本的な部分のみでしたので、
勉強時間は、10時間弱くらいだったと思います。



4.SQL(MySQL)

Webアプリケーションを作る上で欠かせないのが、データベース(DB)の知識です。
なので、ここでDBとは何かとDBでデータの操作に使用する言語のSQLを勉強しました。

これもJavaと同じく、テキストを読み進めて問題を解いていくスタイルで勉強しました。
勉強時間は、7時間/日×約5日くらいなので、約35時間ほど。



5.Servlet & JSP

ここまで来たらついにWebアプリの作成の勉強に入ります。
ここではサーバサイドに使用するサーブレットとJSPを勉強しました。

ちなみに
・サーブレット:JavaのメソッドでHTMLを書き出すもの
・JSP:HTMLにJavaのコードを埋め込んだもの

ここでは主にServlet & JSPの書き方、GUIアプリに重要なMVCアーキテクチャの概念、セッションについてを学びました。
勉強方法は今までと同様で、テキストを読んで写経して、問題を解く形式です。
最終課題で簡易的なECサイトを作成しました。

勉強時間は、7時間/日×約15日くらいなので、約100時間ほど。



ここまでの勉強で私の研修は終了し、実際の業務へ行きました。
最終的な勉強時間は250時間ほどでした。
ここでようやくスタート地点に立てたかなという感じです。



6.JavaScript & JQuery

派遣先の現場で使用する言語がJavaScriptだったため、新たに学びました。
業務開始日の数日前に基礎のみ叩き込み、あとは業務中にやりながら(ググりながら)覚えましたけど、Javaをやったおかげで方言に思える部分も多々ありました。



7.UNIXコマンド

派遣先の現場が代わり、業務でバリバリUNIXコマンドを使用する環境だったので、半年間で業務をしながら覚えました。
といっても良く使うメインどころくらいですが、おかげで黒い画面にも慣れました!
コマンドは勉強というか、使いながら数をこなすくらいしかないですね。慣れです。
この後のRuby on Railsで意外とターミナルでの操作が出てくるので、やっておいて良かったです。



8.Ruby on Rails

Web系で働きたくなったので、プライベートで学び始めました。
サーバーサイド言語ならなんでも良かったのですが、なぜRubyを選んだかというと、スクールで勧められたからです。(完全に他力です・・・)
今伸び始めている言語、多少経験が浅くても業務に携われると、後々某エージェントに聞きましたので、結果的に選んで良かったと思ってます!!

ドッドインストールやprogateで基礎を勉強し、
侍エンジニア塾のマンツーマンレッスンでrailsを使用してWebアプリを制作する方法で勉強しています。

Ruby on Railsは始める前に、最低限HTML,CSS,SQLは抑えておくべきだとやりながら思いましたので、
研修時代の勉強順番は理にかなっていたのだと、今実感しております。

以上、Web業界を目指す私の勉強順です!