自己紹介
私は都内でインフラエンジニアをやっています。
主にアサインしている案件はMS製品のクラウド移行案件が多いような気がします。
きっかけ
私自身、エンジニアになるまでという点に関してはすごく戦略立てて、エンジニアになれたと考えています。
が、一方で今後のキャリアという点に関してはまだまだ戦略不足。
そもそもまだ入社して間もないため、何ができるとか、PM/PLが何をしてるか、とかよくわからないことだらけなんですけども。
それでもキャリア戦略は立てておいて、損はないはず。
シンプルに自分の足りないところを可視化して、補うためにはどのようなアクションプランを取れば良いのかということが明確になるから。
目標
2年以内を目処にフルスタックエンジニアとして、独立をする
(ただしどちらかと言えばインフラ寄り)
まずは準委任としてそれなりに安定した状況で案件を受ける
その他、やりたいことはありますが、この目標設定が一番、一般的でわかりやすいと考えました。
調査
まずフルスタックエンジニアとして独立するためにどのような技術が必要なのか。
クラウドテックで案件を調べてみました。
必須スキル
- Microsoft Azure環境でのインフラ構築経験
- AWSを利用したインフラ構築
- インフラ構築の自動化
- Cloudfoundation・ARM・Terrafomer
- Powershellなど
- ネットワーク設計・構築
- docker、kubernetes等でのコンテナ基盤の構築
- 運用・監視ツールの導入
- Prometheus
これらのスキルがホットワードとしてよくクラウドテックの案件の必要スキルに掲載されていました。
フルスタックエンジニアを目指すのであれば、これらのスキルに加えてアプリケーション作成の言語のスキルが必要になってくると思います。
特に使用されているであろう言語は
- Typescript
- Python
この辺りになるかと思います。
フレームワークはReact・Vue.js・Djangoなどでしょうか。
業務で学べるスキル
自分が今働いている企業では上記のスキルのうち学べるものは
- Microsoft Azure環境でのインフラ構築経験
- インフラ構築の自動化
- Powershellなど
- ネットワーク設計・構築
これらのスキルは学ぶことができると考えています。
AWSについては今後学べる可能性がある、という感じでしょうか。
運用・監視についても不可能ではないと考えています。
ひとまずは上記の3つを早急に学ぶことを大前提にそこからAWSと運用・監視ツールの習得に移りたいと思います。
資格
インフラ関係の強みとしてはやはり資格でしょう。
どうしてもインフラやネットワーク関係はポートフォリオで示せないスキルが多いため、ポートフォリオとして資格を取得する必要があると考えます。
最低限取得を考えている資格は下記の通り。
- CCNA
- AWS
- いわゆるAWS5冠
- ソリューションアーキテクト アソシエイト・SysOps Administrator アソシエイト・デベロッパー アソシエイト・ソリューションアーキテクト プロフェッショナル・DevOpsエンジニア プロフェッショナル
- Azure
- Azure Fundamentals・Azure Developer Associate・Azure Security Engineer Associate
もちろん上位互換の資格はたくさんありますが、一旦この辺は最低限取得したいと考えています。
戦略
①社内でのアピール
まだまだスキルが足りていないことは明白。
業務でいろんな経験ができるとは言ってもすぐにいろんな経験をさせてもらえるわけではない。
となるとどうにかして自己研鑽をして、努力しているということをアピールする。
アピールの内容としては資格の取得が一番わかりやすいような気がする。
まずは業務的にもAzure Fundamentalsが最短な気がする。
②自己学習のアウトプット
個人的にインフラエンジニアのキャリアが見えにくい点としてアウトプットしている人が少ないように思える。
特にWEBアプリなどではYouTubeでもハンズオン形式でアプリ作成している人がいるが、一方でサーバー構築はどうだろうか?
AWSのEC2を立ち上げる、とかはよくあるが、その先のネットワークの設計・構築はどうだろうか?
結局その設計、構築をしたらWEBアプリはどうなるのだろうか?
この辺りを積極的にアウトプットしていくことで一つのポートフォリオにならないだろうか?
逆に企業側からすれば、この人はインフラのこの領域まではよく知っているんだなという風に感じ取ってもらえるような気がする。
③スキルシートを構築
業務で関わった案件を都度、まとめておく。
特にいざ独立するときに使えるスキルにフォーカスする
④WEBアプリの作成・チーム開発
いわゆるポートフォリオ。
WEBアプリの言語についてはPython、Typescriptなどを使用してWEBアプリを構築する。
知り合いのエンジニアと一緒に開発をしてチーム開発を実現する。
よくある開発案件
特に最近はマッチングアプリの開発が多いように思える。
Pythonならば業務効率化の領域。
⑤その他資格の取得
上記に記載した資格を概ね2年以内に取得する(目標高い)
課題
学ぶべきスキルは固有名詞で理解できた。
習熟度はどの程度求められるのであろうか?
その点については実際の業務を見ながら、どの程度の習熟度があれば、どの程度の仕事を任せられるのか、という点から逆算して考えていく。
今後、ブラッシュが必要な部分。
気付き
経験年数ではなくスキル制度であるということ
RPGで言えば、レベル制ではなく、スキル制であるということ。
○○の開発経験3年以上、みたいな募集はほとんど見なかった。
要するに、企業にそのスキルがあるということが伝わればOKであるということ。
テーマは自動化、自動化については積極的に学ぶ
根本的にインフラは専門知識が求められる、その割には直接目に見えない部分なので、どれだけコストをかけてリターンがあるのか、わからない。
もちろん蔑ろにはできないし・・・・という諸々企業の思惑が見え隠れする中で、自動化はそれらを解決してくれる。
インフラエンジニアを育成する必要もないからコストもかかりにくい、再現性が高い...など。
構築、運用、管理、全ての工程で自動化ということが進められている。
この点については今後インフラエンジニアをやっていく上では必須スキルのようにも感じた。