MENTAで、プログラミングを教えているのですが、
よく聞かれる質問のひとつに
「全くの未経験なのですが、何を勉強すればいいですか?」
があります。
現在、自分はエンジニア4年目なのですが、
今自分が思うプログラミング学習方法について、書き残しておきます。
また転職してからの経験を記事にしておりますので、こちらもよろしければご参考にしてください。
Webエンジニアとして必要な技術
まず、Webエンジニアとして現場で働くために必要な技術を書いておきますね。
- バックエンド言語(PHPなど)
- HTML、CSS
- JavaScript (jQuery)
- Linuxコマンド
- サーバーの知識
- DB(MySQL)
- ローカル開発環境構築
などが、必要最低限のスキルになるかなと思います。
これは主にバックエンドエンジニアになるために学習すべき内容です。
ドットインストール、ProgateなどでまずはPHP
まずは、バックエンドエンジニアになるためにPHPをしっかりと学習していきましょう。
いきない分厚い技術書を読んでも、頭に入りにくいと思いますので、
最初は、ドットインストールやProgateなどでPHPの概要をつかみます。
HTML、CSSにかけて良い時間は1−2日
PHPにある程度、慣れてきたらHTMLやCSSも学習しておきましょう。
ただし、HTMLやCSSにかけていい時間は1−2日ほど。
フロント専門のエンジニアになるのであれば、しっかりとスキルを身につけるべきでしょうが、バックエンドエンジニアとして働くのであれば、
基本的なことを学習するのにかけていい時間は1−2日ほどです。
あとは、現場でタスクをこなしながら、理解を深めていくで十分です。
JavaScriptも並行して学習
PHPにある程度、慣れてきたら、JavaScriptも並行して学習していきましょう。
JSを真剣に学習するのであれば、オライリーのこの本は鉄板です。
また、自分がおすすめしている学習サービスは、ドワンゴさんが運営されているN予備校です。
こちらのプログラミング入門コースを完璧にマスターするだけでも、かなりスキルアップできます。
Webエンジニアとして、現場で働く上で必要な技術を浅く広く学習することができます。
実際に、自分も仕事がない時期に、このN予備校で1ヶ月集中して学習したところ、かなり実力がつき、実務でも大いに役立っております。
あと、jQueryもしっかりと学習しておきましょう。
jQueryを導入している現場は多いので、習得は必須です。
まずは基本的なDOM操作ができればよろしいかなと思います。
おすすめの技術書はこちら
実務で使えるような具体的な例題が豊富です。
かつ、「これなんだっけかな〜」と思ったときに、リマインダーとして参照ページを細かく指定してくれていることも高評価です。
入門用として最適!
Linuxコマンドも必須
必要な技術は、プログラミング言語だけではありません。
Linuxコマンドもあわせて学習しておきましょう。
実務では、ターミナルで作業することがほとんどです。
ターミナルとは、簡単にご説明すると、PCの操作をすべてコマンドで操作するイメージでよろしいかなと思います。
このコマンドをなるだけ、自由に操作できるようになっておきましょう。
Linuxコマンドを学習したいなら、こちらの本がピカイチです。
Linuxコマンドだけではなく、Linuxについて基本的なところからしっかり学習できるので、入門用として最適です。
DBも勉強していこう
データベースも必須です。
まずはMySQLにでよろしいかなと思います。
SQL文の書き方は必ず習得しておきましょう。
まずは基本的なデータの取得、作成、更新、削除
いわゆるCRUD操作ができるようになる必要があります。
開発時はツールを使用して、DBを操作してもOKなのですが、
MySQLのコマンドも合わせて覚えておくべきです。
MySQLのおすすめの書籍はこちら
例題も豊富で、コマンド操作もしっかり学習できるので、
ひとまずはこちらの本をしっかりマスターすることで、実務でも十分戦えると思います。おすすめです。
ローカル環境構築もできるようになろう
ローカルで開発環境も構築できるようになっておきましょう。
実際の業務では、各々のPC内に開発環境を構築して、
実装することがほとんどかなと思います。(今の現場は、ローカルではなく開発用のサーバーに直接反映させてますが)
vagrant, docker などで構築できるようになっておけば、大変素晴らしいと思います。
ローカル環境の構築ができるようになると、サーバーの理解も深めることができますので、早めに注力しておきましょう。
これだけでも全然足りない、必死に勉強するべし
ざっとですが、簡単にWebエンジニアとして働くために必要な知識を書いてみました。
ですが、これだけでも全く足りません。
おそらく未経験から現場に入場すると、想像の3−5倍は苦労されるかなと思います。
実際、自分も未経験から転職し、現場に入りましたが、
分からないことが多すぎて、大変苦労したことを覚えております。
なので、必死に勉強しましょう。
そして早くどこかの企業に入り、実務経験を積みましょう。
それがエンジニアとして成長するためには最短かと思います。
未経験から転職するには転職エージェントを使用するのが必須です。
また、少しでも現場で苦労する人を少なくしたいという思いから、MENTAでプログラミングを教えさせていただいております。
単に人のコードをコピペするのではなく、ご自身の言葉で、しっかりとコードが書けるようになりたい方
基本的なところからしっかりと学習したい方には大変おすすめできるかなと思います。
気になるかたはお気軽にお問い合わせください。