プログラミングスクールを卒業したあとに学んだらよいこと


## まえがき

在籍している会社で、サーバサイドエンジニアの業務経験者の求人をかけている。

社歴だけは長いので、採用も担当しているわけだけど、業務経験者募集にもかかわらず、
〇〇〇〇::CAMP などのプログラミング スクールの卒業生が応募してくる。

業務経験者募集なので、無視してもよいのだけど、
どんな内容をことを習っているのか興味もあるので数名と会ってみた。

会った印象としては、
- Ruby x Rails でフリマアプリを作って、Heroku にアップする 
- SQL / セキュリティは教えてもらっていない
という感じだ。

これで、60万とか取ってるのか。
それは儲かる。ボロい商売だ。おれもやろうかな。
初学者相手なので、質問内容もそんな難しいものではないだろう。メンターのバイトも楽そうだ。

現在コロナの影響もあるだろうが、60万も払って可愛そうだが、これでは転職は難しいと思う。

あと、次の職が決まるまでは、今の職をやめないことをおすすめする。
時間はとりづらくはなるが、リスキーすぎる。

1年くらいかけてじっくり学び、仕事しながら転職活動をしてほしい。

せっかく、プログラマ という職業に興味をもち、プログラミング スクールで学んだのなら、引き続き頑張っていただきたと思う。
プログラマがお金稼げるのは本当だしね。

ということで、前置きが長くなったが、プログラミング スクールで学んだあとになにを学べか良いか書いてみようと思う。

## 学んだらよいこと

あくまで、サーバサイド寄りの内容ではあるが、

- フレームワークを使わずに、登録 / 変更 / 削除 / 一覧 を作る
	- XAMPP をPCにインストールして、フレームワークを使わずに、PHP + MySQL で 登録 / 変更 / 削除 / 一覧 を作る
	- Docker とか君らにはまだ早い。XAMPP で十分だ。

- Linux を学ぶ
	- 操作の仕方を覚えよう
	- AWSEC2 や VPS を契約して、弄り倒そう
		- amazon linux 2 か、CentOS でよい
			- 異論は認めるが、参考書などは yum コマンドを使っていることが多いだろう印象から

- EC2 または VPSで、Web/DBサーバを構築する
	- Webサーバ ( apache / nginx  )
	- DBサーバ ( MySQL ) 

- DB/SQL文を学ぶ 
	- insert / update / delete / select 文をかけるようにする

- セキュリティ を学ぶ
	- せめて、XSS / SQLインジェクション / XSRF の説明ができるようになり、実装に組み込むことができるようにする

- DNS を学ぶ
	- ドメインを取得してDNSに設定してみる
	- AWS Route53 か、お名前.com でドメインを取得して、レコードを設定してみる

- メールサーバを学ぶ
	- メール の送信 / 受信の仕組みについて学ぶ
	- お名前.com でメールサーバを契約して、自分専用のメールアドレスを持ってみる


## 読んでみたら良い本

上記の内容を学ぶために、読んで良さそうな本を紹介する。

私が読んだことのある本 / Amazonの試し読みで目次を見た程度の本と混ざっているので、
実際に本屋に行って内容を確認して買ってもらいたい。


### プログラミング

- 気づけばプロ並みPHP 改訂版--ゼロから作れる人になる! 
	- https://www.amazon.co.jp/dp/4865940650/

- 改訂新版JavaScript本格入門 ~モダンスタイルによる基礎から現場での応用まで
	- https://www.amazon.co.jp/dp/477418411X

### コンピュータ / WEBの知識

- 入門 コンピュータ科学 ITを支える技術と理論の基礎知識
	- https://www.amazon.co.jp/dp/4048930540/

- イラスト図解式 この一冊で全部わかるWeb技術の基本
	- https://www.amazon.co.jp/dp/4797388811/

- Webを支える技術 HTTP、URI、HTML、そしてREST
	- https://www.amazon.co.jp/dp/4774142042/

### OS

- Linuxの絵本 サーバーOSが楽しくわかる9つの扉
	- https://www.amazon.co.jp/dp/4798163198/

- Linuxシステム[実践]入門
	- https://www.amazon.co.jp/dp/4774158135/

### AWS

- 図解即戦力 Amazon Web Servicesのしくみと技術がこれ1冊でしっかりわかる教科書
	- https://www.amazon.co.jp/dp/4297108895/

- Amazon Web Services 基礎からのネットワーク&サーバー構築 改訂3版
	- https://www.amazon.co.jp/dp/4296105442/

- AWS認定資格試験テキスト AWS認定 クラウドプラクティショナー 
	- https://www.amazon.co.jp/dp/4797397403/

### WEBサーバ

- サーバ構築の実際がわかる Apache[実践]運用/管理
	- https://www.amazon.co.jp/dp/4774150363/

### DBサーバ

- マンガでわかるデータベース
	- https://www.amazon.co.jp/dp/4274066312/

- スッキリわかるSQL入門 第2版 ドリル222問付き! 
	- https://www.amazon.co.jp/dp/4295005096/

- 基礎からのMySQL 第3版
	- https://www.amazon.co.jp/dp/4797393114/

### メールサーバ

- 3分間HTTP&メールプロトコル基礎講座	
	- https://www.amazon.co.jp/dp/4774140813/

### ドメインネームサーバ

- DNSがよくわかる教科書
	- https://www.amazon.co.jp/dp/479739448X/

### セキュリティ

- 体系的に学ぶ 安全なWebアプリケーションの作り方 第2版 脆弱性が生まれる原理と対策の実践
	- https://www.amazon.co.jp/dp/4797393165/

- 徹底攻略 情報セキュリティマネジメント教科書 令和2年度
	- https://www.amazon.co.jp/dp/429500796X/

### テスト

- 知識ゼロから学ぶソフトウェアテスト 【改訂版】
	- https://www.amazon.co.jp/dp/4798130605/


## 資格

プログラミング書けりゃ、資格なんていらない世界だが、無いよりはマシだろう。

- ITパスポート
	- https://www3.jitec.ipa.go.jp/JitesCbt/index.html

- AWS認定 クラウドプラクティショナー 
	- https://aws.amazon.com/jp/certification/certified-cloud-practitioner/