年齢ごとに考えるエンジニアの始め方

## 概要
もしも僕がアポトキシンなんちゃらを飲んで若返り記憶喪失になって、「エンジニアになりたい!」と思った時用のmemoを書きました。
未来の僕に宛てた手紙です。妄想ですが最後までお付き合いくださいmm

よくこの辺のアドバイス関連で「他人事だと思ってテキトーに言いやがって」的な話がありますが、今回はアポトキシンなんちゃらを飲んだ設定なので自分事です。

## 前提
- やりたいことが決まっている場合はそっちやってみればいいと思います
- **実務未経験の方がエンジニアになりたい!という時のパターンです。既に経験されている方は別のキャリア戦略となります**
- あくまで開発者、エンジニアになりたい人向けなので、お金稼ぎたいだけの人は turn right
- ポエムです

### 学生(社会人になる1, 2年前までを指します)
はい。可能性の獣ZONEですね。**ﾕﾆｺｫｫｰｰｰｰﾝ!!**
今は大学生アルバイトみたいな建てつけが多いですが、今後は高校生のバイト先としてもあるんじゃないかと思ったり。

基本的には「やりたい!」と思ったことに手をつけていけばいいと思います。
- 学校のこれが使いにくい
- おしゃれなwebサイト作ってみたい
- AI * 競馬で稼げるのか試したい

などなど。自分のモチベーションが続くかが大事ですから。
あとコンピュータサイエンス(CS)から入らない方がいいです。クソつまんないので。
中にはそこから入って楽しさを感じる人もいますが95%以上の人は「触って動かして楽しい」から始めるのがいいです。
その後からでもCSは学べます。

どの言語がいいとか、そういうのはもうちょっと後から考えてokです。
イチロー選手も「遠回りすることが大事」と成長の過程の話をされています。
というか出口戦略から考え出すとけっこう病みますよ。まずは考えるより動こうね。俺。

### インターン(主に大学~3年ぐらいまで)
はい。可能性の獣ZONEですね。ﾕﾆｺｫ(ry

ほとんど学生フェースと同じです。強いてあげると少しだけ先を見据えてもいいかなとも思ったり。
ただ、ここで先のことを考えて右往左往するのはもったいないのでとりあえず動いて欲しいです。

というのも組み込みのC言語で学ぶことも、キラキラWebで学ぶことも最初のうちは抽象化したスキルを得るという点では大きく差がないので。
動かない方が勿体無いからまず動くんだ!!俺!!
そもそも開発業務が続けられるかも分かりませんから。

### 就活中
ここからは将来と向き合うフェーズになりますね。
この段階でエンジニアになりたいと思って焦って探さない方が良いです。
というのもその時考える良い就職先はキラキラした経歴を持った人たちで先約されている可能性が高いので。
そして、焦って未経験可のところに入るのはやめた方がいい。
- 本当に開発業務続けられそう?
- 誰でもいいから未経験!は危ない可能性もそこそこある
- 本当に開発好きなら、入社してからでも勤務終了後に開発続けられるよ

初手ブラック企業は一気に詰む可能性があるので、そこだけ気をつけて下さい。
逆にそれ以外であれば最初の数年で得られる知識や経験は、他の業界に行っても通用します。
どんな業界に行っても通用する人はする。しない人はしない。ただ、一部の条件で輝く人もいる。

法律、人事労務、経理の話はどの会社に行っても役立つから、自分が戻れるならこの辺から選択しそう。
あとどの業界選ぶにしても大手がいいです。小さい規模の会社では学べないことも大手では学べる。
逆に大手にいると小さい規模の会社は発注先になったり、自身の組織内でのチーム単位から推察できるので。

#### 目指す方向

- 以下は優先順位の順です
- 自分なら基本情報の勉強しながらJavaで簡単なCMS作ってみるかなって思います(簡易掲示板とかでいい)

```
1. Java
2. Web系(フロント、バックエンド)
3. インフラ
```

ある程度学習して、やっていけそう!やっていきたい! と思えたら SIer 目指すかな...
まず一定の社会人としてのスキルを身につけるのが最優先だと考えているので。

### 社会人1, 2年目
ここから転職関連の話になりますね。
よほどブラックとかではない限り、できれば今の職場でちゃんと value 出してから転職して欲しです。ブラックだったらすぐ逃げて!
それでも勢いも大事だったりするので、パーンといっちゃっても良いかもですね。過去の自分なら勢いで飛び出してそう。

ただ、覚えておいて欲しいのは
- **開発業務は向き不向きがある**
- **向いてる人なら、今の仕事続けながらでも続く**

就活中同様、「誰でもいいから未経験!」は危ない可能性もそこそこあるから気をつけるんだ!俺

#### 目指す方向

就活中と同様なので省略


### ここまでの注意点とこれ以降の注意点

- ここまでの注意点
    - 世の中には悪い大人が多いので騙されないでね
    - お金の流れを追う癖をつけてください。そうすると大体怪しい話には対応できる

- これからの注意点
    - こっから先は完全に自己責任
    - 社会に対して一定の責任を負っている可能性があり「勢い」では済まされないことが多い
    - だからちゃんと出口も考えて動くんだ。俺

もちろん義務教育や、成人を境目にもう自己責任でしょ
という話はあるんですが、経験上25歳ぐらいまではどうしても避けれないのが今の日本の現状かと思っているのでここらへんが境目。

### 第二新卒
社会人1,2年目と同様。
ただ、この段階で value を出せていない & 勤めている会社がよほど悪くなければ日常業務を見直すんだ。俺。

転職は考え出すととても楽しい気持ちになるかもしれないけど、それは現状の課題に目を瞑っていないか胸に手を当て考えて欲しいです。
能力は地続きなので転職に成功しても同じことで苦しむかもしれません。

#### 目指す方向

優先順位は自分自身を振り返り、どういったことにモチベーションがあるのか考えた方がいいです。
- 裁量権が欲しい人はWeb系が向いてると思います。特にフロントは経験が浅い人でも活躍しやすい
- 逆に大企業が向いている人もいます。そういう人はSIerの求人からどの言語か?を確認するといいと思います

27歳ぐらいまでの間なら言語はJavaを最優先にお勧めします。
- 案件数が多い
- 新人が入れる余地が明確にある(Web系は自社サやってないときつい。サバイバル能力が必要)
- 新人を受け入れれるスキームが整っている
- 大規模開発が経験できる
- 基本情報やJavaSilverなど体系的に学ぶ環境が整っている

といった理由です。

### 27~30歳
いままでのエリアと違い、転職が容易では無くなってきます。
これ以降の年齢で未経験ok!は地雷率が上がります。
また、転職にチャレンジできる回数も限られているので勢いで飛び出すなよ。俺。
転職前にしっかりと目指す方向性を考えて、自分が開発業務に向いているのかを経験してからの転職がお勧めです。

#### 目指す方向

これ以降の年齢はWeb系一択かな...特にフロントがお勧めです。

※モバイルは僕が全く経験ないので分からないから省きました。ご意見あればください。もしかしたらWebフロントより良いかも

理由として、フロントは技術の移り変わりが激しく、ずっと追いついている人が少ないから。
バックエンドの現場はどこも `3年, 5年, 10年`　といった古株の人がいて新人がきてもなかなか裁量権を貰えない。
僕の実体験ですが、React 1年しか書いていない時に入った現場で僕が1番 React に詳しかったということがありました。
他でも似たような事例が起こっています。

### 31~35歳

未経験の異業種転職はほぼラストチャンスと思っていいです。
27~30歳の時と方針は同じですが難易度が normal から hard に上がっています。
正直ここ以降は「根性だけはあるんで」だけでは無理。それプラス開発に向いている必要があるぞ。俺

### 36歳以降

ここから先は事例はありますがレアケースです。

ここから先は会社員として転職せずに最初から個人事業主(フリーランス)でもいいかなと思っています。
というのもこの段階で転職できても、
- まともな会社であることが稀
- 入れても買い叩かれる(最低以下の年収で入社)

といった状態だからです。

どちらにせよ very very hard であることには変わりないので、背水の陣!とかで飛び込むなよ。俺

## さいごに

この辺の話がポジショントーク入っていたり、生存バイアスまみれな話が多いのでなるべく俯瞰的に話しました。
建設的なマサカリお待ちしております。