【１ヶ月で学ぶ！】Back-end Developperへの道 #0:導入


※こちらの記事は、学習記録/ポエム要素が強いものとなっておりますことをご了承ください。

# はじめに

私は未経験からエンジニアになって二年目を迎えた新米エンジニアです。
どんどん学習し、どんどん経験を積んで立派なバックエンドエンジニアになりたいという意欲に溢れているものの、
「では一体何を学べばいいのか」という壁にぶつかる経験は誰にでもあるかと思います。

そこで登場するのが、かの有名な、「これを見れば自分が何を学ぶべきか一撃で分かる」というdeveloper-roadmapです。
https://github.com/kamranahmedse/developer-roadmap
こんな素晴らしい資料がオープンソースだなんて、いい時代になりましたよねホント。

これが全てではないとの声もあるかとは思いますが、半人前の私には非常に良い教材ですので、一旦これを私個人の教育マップの正とし、体系的に学んで行きたいと思います。


# 学習内容

下記の順に１日１記事を目標に書いていこうと思います。

- <a href="https://qiita.com/hariNEzuMI928/items/9d0b440ad99b77fb5106">#01日目 : Internetとは</a>
- <a href="https://qiita.com/hariNEzuMI928/items/bd569c3248fab60bd6b3">#02日目 : Basic Frontend Kowledgeとは</a>
- <a href="https://qiita.com/hariNEzuMI928/items/2309dd0dc805ffae78a7">#03日目 : OS and General Knowledgeとは（前半）</a>
- <a href="https://qiita.com/hariNEzuMI928/items/4281261b481078a747bf">#03日目 : OS and General Knowledgeとは（後半）</a>
- <a href="https://qiita.com/hariNEzuMI928/items/c5972a943626d8d4e8ed">#04日目 : Learn a Languageとは</a>
- <a href="https://qiita.com/hariNEzuMI928/items/6c8fd71c65e2d5a36a84">#05日目 : Version Control Systemsとは</a>
- <a href="https://qiita.com/hariNEzuMI928/items/c60d02d0932d25a1f00e">#06日目 : Relational Databasesとは</a>
- <a href="https://qiita.com/hariNEzuMI928/items/09613d64f2dba2d474dd">#07日目 : More about Databasesとは（前半）</a>
- <a href="https://qiita.com/hariNEzuMI928/items/eb7683a930dba9b7408d">#07日目 : More about Databasesとは（後半）</a>
- <a href="https://qiita.com/hariNEzuMI928/items/0c0298d63be37a8ff4cb">#08日目 : NoSQL Databasesとは</a>
- <a href="https://qiita.com/hariNEzuMI928/items/ff01dba41ce616a6d767">#09日目 : Leran anout APIsとは</a>
- <a href="https://qiita.com/hariNEzuMI928/items/582b9ef73ee918705e51">#10日目 : Cachingとは</a>
- <a href="https://qiita.com/hariNEzuMI928/items/0459fa8bb169126130fe">#11日目 : Web Security Kowledgeとは（前半）</a>
- <a href="https://qiita.com/hariNEzuMI928/items/501f9fd6c5aa6ea917c6">#11日目 : Web Security Kowledgeとは（後半）</a>
- <a href="https://qiita.com/hariNEzuMI928/items/129b6519b83492447a16">#12日目 : Testingとは</a>
- <a href="https://qiita.com/hariNEzuMI928/items/6b440a9dd250587b6e7b">#13日目 : Authenticationとは</a>
- <a href="https://qiita.com/hariNEzuMI928/items/a93b431f3954c152eed6">#14日目 : Design and Development Principlesとは</a>
- <a href="https://qiita.com/hariNEzuMI928/items/1fd7a809fdf3f12066eb">#15日目 : Architectual Patternsとは</a>
- <a href="https://qiita.com/hariNEzuMI928/items/5303563b96501d78c230">#16日目 : Serch Enginとは</a>
- <a href="https://qiita.com/hariNEzuMI928/items/c672e178a3d4d10b6773">#17日目 : Message Brokersとは</a>
- <a href="https://qiita.com/hariNEzuMI928/items/925ab57c364492ecb812">#18日目 : Containerzation vs Virtualizationとは</a>
- <a href="https://qiita.com/hariNEzuMI928/items/12d7a7adcc20ce4075f9">#19日目 : GraphQLとは</a>
- <a href="https://qiita.com/hariNEzuMI928/items/54c973a088c00f76f409">#20日目 : WebSocketsとは/Web Serverとは</a>
- <a href="https://qiita.com/hariNEzuMI928/items/867fe64162c83cea6983">#21日目 : Building for Scaleとは</a>


## 所感
Serch Enginが割と手前、Web Serverが割と後ろにあることに驚き。
１日１記事と決めたが、項目ごとに重さがバラバラなので、コンスタントに継続できるか若干不安。・・・①
重いテーマについては際限がない気もする。・・・②

# 手法

- 不安①：
「継続できるか不安」というを払拭すべく、システム化というか、手法を固定して始めようと思います。
（検討：まずは内容が軽いものからやってもいいのかもしれない？）

-  不安②
「〇〇とは何ですか」と聞かれたときに「どこからどこまでの情報を求められるのか」と迷う場合は、既に複数の情報の引き出しを持っているという状態にあるのかなと思います。
まずは要点を3つに絞って説明できるようになっていきたいです。

- 学習時間配分

 - 調査  （40分）
 - 要点整理（30分）
 - 記事化（20分）

まずはこの90分サイクルで5記事書いていきたいと思います。
修正が必要な場合はこの記事に追記という形で書き連ねていきたいと思います。

# 最後に

あなたが私と同じ経験の浅いエンジニアの場合、共に学び、エンジニアとしての裾野を一緒に広げて行きましょう！

あなたが既にたくさんの経験を積んでおられるエンジニアの場合、「はたして後輩に聞かれたときに自分は空で説明できるだろうか」という視点で見ていただければと思います！

あなたがプロフェッショナルの域である場合、ぜひ建設的なご意見をたくさんいただけますと大変ありがたいです！