営業からWeb系エンジニアになった話

これは「Happiness Chain Advent Calendar 2023」の2日目の記事です。
https://adventar.org/calendars/9414/


# 自己紹介
2000年生まれ。短大卒業後、地方の中小企業で営業をやっていました。そのためITの知識は0で、タイピングが苦手で寿司打3000円コースがクリア出来ないレベルでした。今の会社にいても成長できないと感じ、市場価値を高めるためにエンジニアの道を進みました。
　
そして、仕事をしながら勉強してWeb系企業でエンジニアとしてキャリアをスタートさせていただけることになりました。異業種から目指している方の参考になれば幸いです。

### 私の人生を変えるきっかけを与えてくれた本
学歴もスキルもない。手取りは14万で貯金もできない。過去を悔やんでいた時に出会いました。強みが分からない、何がしたいのか分からない時、そっと背中を押してくれてるような本です。

##### 苦しかったときの話をしようか ビジネスマンの父が我が子のために書きためた「働くことの本質」
>この世界は残酷だ。しかし、それでも君は確かに、自分で選ぶことができる！

 https://amzn.asia/d/71CkpUN

# 学習時間
- 独学100時間、スクール学習時間970時間の合計1070時間学習しました。
- 学習期間は11ヶ月程になります。


独学ではインプットばかりやっていて勉強した気になっていました。いざ何か作ろと思った時にコードが書けず手が止まってしまいました。
そんな時にX（旧Twitter）で[@ゆうだい](https://twitter.com/yudai_on_rails)さんを見つけ、運営しているスクールに入会したいと思い直ぐにDMしました。その後通話で相談し入会することになりました。
# スクールについて
私が通ったスクールはHappiness Chainというスクールです。未経験の方だけでなく、現役エンジニアの方がスキルアップのために通っているほど、課題の難易度も高くハイレベルなスクールです。

https://happiness-chain.com/

# スクールで学んだこと
- GitHubでの開発
- Linuxの基本的なコマンド操作
- Vimを使ってコード記述
- Dockerで開発環境構築
- SQL
- Ruby
- Ruby on Railsでアプリケーション開発
- Rspecで単体テスト、自動テスト
- JavaScript
- React
- Rails ✖️ React シングルページアプリケーション
- TypeScript
- 質問力（実装したいこと、試した事、仮説の立て方、エラー対応）
- チャットや通話でのコミュニケーション能力
##### 学習の流れ
書籍や動画でインプットし、課題でアウトプットする流れです。アウトプットで苦しみながら実装することで成長を実感しました。とにかく手を動かすのが言語やフレームワークを習得する上で一番だと思います。

Railsでは2つのアプリケーションを実装しましたが、合計すると400時間は掛かりました。いきなり難易度が上がり、おそらくロードマップで一番の山場だと思います。お陰様で自走力が身につきました。
##### 学習記録をつける
Slackに日報を提出するtimesがあり、学習記録をつける習慣が身につきます。他の生徒さんの進捗状況を見て勝手に競争意識が生まれ、負けないようにより一層勉強するようになりました。
##### メンター（つよつよエンジニア）によるコードレビュー
レビューはとても厳しく、何度も修正してやっとLGTMを頂けます。レビューの内容は参考記事を教えて頂きそれを元に修正したり、便利なメソッド等を教えて頂けます。毎回勉強になることが多く、メンターさんには感謝です。
##### もくもく部屋
Discordでもくもく部屋というチャンネルがあります。

 私は仕事が繁忙期の時は帰ったら直ぐ寝て4時に起きて勉強していました。驚いたのがすで早朝から勉強している人、その後も続々ともくもく部屋に入ってくる人がいる事です。生徒さんの意識が高いと感じました。
##### 友達ができる
- Discord雑談部屋
- オフラインとオンラインでミートアプを定期的に開催
- Discordで繋いで一緒に勉強することも
##### 一人一人をよく見てくれる
私はロードマップは完走していませんが、学習の途中で「Kazukiさんの実力ならこの企業で働けます」とお声をかけていただき企業様に推薦してくれました。

企業様に推薦していただけますが100%内定ではありません。ですので職務経歴書の添削や、面接対策をきっちりしていただけます。私は一回目の模擬面接で緊張して言葉がまとまらず、このままでは落ちると言われました。模擬面接は合格を頂けるまで何回もやります。
 
# 自己分析
面接は自己アピールする場だと思います。自分の長所と短所を把握し、アピールポイントを明確にすることが重要です。事前にそれらを把握し自信を持って臨んだので、面接では人柄を褒められることが多かったです。

##### クリフトンストレングス（ストレングスファインダー）
Web上で177個の質問に答えることで、自分の才能や強みを発見することができます。私は面接の前に使い、自己分析をしました。
 
https://www.gallup.com/cliftonstrengths/ja/253634/%E3%83%9B%E3%83%BC%E3%83%A0.aspx
# 学習の習慣化
勉強することを習慣化させれば、自動的にルーティンができます。私の場合100時間超えたあたりで、勉強しないと今日1日を充実して過ごせていない気がしてムズムズするようになりました。
## おすすめ書籍
##### 神メンタル 「心が強い人」の人生は思い通り 
https://amzn.asia/d/cPvwXW0

実践したこと
> - 目標を具体的に明確化すること。明確に目標を設定できれば、手段は考える必要なく、自動的に決まる。
> - 目標を紙に書き、部屋に貼る。
> - とにかく行動に移すこと。やらない言い訳を作らないこと。
> - 困難な状況になっても、ポジティブに考えること。


##### 神時間力 

https://amzn.asia/d/6FyenBU

>- お金は平等にはないが、24時間は平等にある。
>- わたしたちは24時間何かに投資していると考えてみる。


##### 自分の中に毒を持て
https://amzn.asia/d/3KNTXdd
>安全な道と危険な道がある時、ワクワクする方を選択してみる。

## おすすめ記事
以下は[@ゆうだい](https://twitter.com/yudai_on_rails)さんに教えて頂いた記事です。エラーや実装で詰まった時に何度も助けて頂きました。
##### 分からない事が分からない状況乗り越える方法
https://docs.komagata.org/column
>わからなくて1日何も進まなかったらとてもツラいと思います。１週間何も進まなかったらもっとツラいと思います。

>「何がわからないのかもわからない」というやつ。これはすごくツラいですが、プログラマーにとっては非常によくある状態です。
全然気に病むことはないです。
「ドンマイ、ドンマイ、締まっていこうー！」
ぐらいの感じです。


##### エンジニアの心持ち、ビジネス面で勉強になりました
https://qiita.com/kazukichi/items/7379b75fba2f90d3cf45
> エンジニアというだけで世の中一般から見たら魔法使いくらい凄い事が出来るんです。
飲食店なり製造業なり普通の商売なら大変な「商品開発」というステージが簡単に自分の手で作れてしまうわけですからね。

# 無理はしない
- 仕事から帰ってきて、疲れた状態で勉強しても寝落ちしたり、集中力が続きません。そんなときは早く寝て、翌朝頭がスッキリしている時に勉強すると内容が理解しやすく、ロジックも思いつきやすくなります。
- エラーに長時間詰まったらそれ以上は粘らず、一旦離れて散歩したり筋トレ、サウナなどで気分転換をすると解決策が浮かんでくることもあります。
##### 運動脳という書籍をおすすめします
https://amzn.asia/d/e01fDCW

# 余談
##### 外部モニターの購入をおすすめします
学習効率が格段に上がります。初期はMacbook1画面で学習していましたが、中盤あたりから3画面で学習するようになりました。私の場合、画面分けはローカルホストで動作確認、エディター、Chrome開きググるといった感じです。

# 最後に
[@ゆうだい](https://twitter.com/yudai_on_rails)さんやメンターさん最後まで手厚くサポートしていただきありがとうございました！
生徒の皆さんはいつも刺激され学習意欲が低下することがありませんでした。

独学で困っている人は、素直にプログラミングスクールに通うことをお勧めします。プログラミングスクールの評判は悪いですが、Happiness Chainのようないいスクールも探せばあるし、Happiness Chainの転職成功率は100%という脅威の実績を誇っています。技術スタックを見れば一目瞭然かもですが、最難関・最高峰のスクールだと思います。
 
これからは厳しい道のりになりますが、持ち前の自走力と根性でサービスを開発し、価値を提供していきたです。
また、技術力のみならず営業（ビジネス）もできる希少価値の高いエンジニアを目指します！