独学でAWSを勉強し転職した私の学習方法をご紹介! とにかく実践あるのみ!
私は、2021年の8月末に新卒入社した会社を退職し9月から新しい職場でAWSに携わるエンジニアとして働いています。
前職では、インフラエンジニアとしてオンプレミス環境でネットワーク、サーバの設計~運用をやっていました。
もともと業務で培ったITの知識はあったもののAWSに関して独学・業務未経験の状態で採用していただきました。
AWSの業務未経験から独学でクラウドエンジニアに転職できた私が、
- 「こうやって勉強するべき」
- 「業務未経験は面接でこう評価される」
- 「やっておくとプラスになること」
という内容をご紹介したいと思います。
学習のポイントは4つ! 特に重要なのは「とにかく手を動かす」こと!
知識ゼロのところから私が通った道はざっくりとこのような流れです。
- AWSの概要を知る
- ネットの情報を真似してAWSで何か作る
- 作ったものを自分なりに変更・改善
- 疑問点を調べる
後ほどまた出てきますが、3つ目と4つ目をやっていたことで良い評価をいただけて採用につながっていると感じています。
1つ目:AWSの概要を知るには公式の動画がおすすめ!
AWS公式が提供しているトレーニング動画がおすすめです。
AWS Cloud Practitioner Essentials (Japanese) (日本語字幕版)
私はこれを見て学習しAWS Certified Cloud Practitionerを取得しました。
この資格はAWSの概要やメリットを学べる入門レベルの資格です。
AWSに関して浅く広く学べる資格のため、概要を掴むのにはちょうどいいと思います。
2つ目:真似をしてイメージを掴む
今は、Youtube,Qiita,その他個人や企業のブログでハンズオン動画や詳細な手順を記した記事がたくさんあります。
なのでまずは、偉大な先人たちの真似をして同じものを作ることから始めました。
やったこともないのに何もないところから自分で作るのは大変ですし非効率です。
情報の正確さでいくとAWSの公式が提供してくださっているチュートリアルなどが間違いないのですが初めのうちは難しいかと思います。(できる方はもちろんやった方が良いです!)
なので、一度噛み砕いていただいた先人たちのアウトプット(YoutubeやQiitaの情報)を参考にインプットを行いました。
まずは、VPC,EC2から!
AWSのサービスはなんと200個以上あるそうです。何から手をつけたらいいかわからないですよね。。。w
しかし、これら全てを常に使うわけではなく、やはりよく使われるサービスというものはあります。
その中でも最もポピュラーなVPCとEC2を取り上げたものを参考にすると入りやすいかと思います。
手前味噌で恐縮ですが、本ブログにもEC2の作成手順を画像付きで解説している記事がありますものがあります。
3つ目:自分なりの設定をしてみる
例えば、EC2でサーバを立てる時に、参考にした記事とは異なるパラメータで作成したり、同じものを増やしてみたり。
ここでは、「何を変更すると何が変わるのか?」といった試行錯誤をたくさんすることが大切です。
最初は真似でも、そこから自分で考えて設定することで自分なりのノウハウを蓄積することができました。
参考サイトを見ずに同じものを構築するのでも効果ありです!
4つ目:疑問点を自分で調べて解決する
自分なりにやったり、参考サイトを見ずにやっている時どこかでエラーが出たりします。
エラーメッセージや状況から推測でいいので片っ端から検索して「なんでエラーになっているのか」「どうして直るのか」を調べました。
コピペで解決できるものでもしっかり内容を噛み砕くことで自分のノウハウとして蓄積することができます。
面接では、3つ目と4つ目が高評価
どちらも「自分で」ということがポイントだったと思います。
2つ目止まりだと、インターネットにある情報のコピペしかできないと思われてしまいますが、
「ネットの情報から自分なりに考え独自の設定ができる。」
「エラーの解決を自分で行うことができる。」
といったことが評価されました。
実際の業務でも、このトライアンドエラーは必ず発生します。
それを自分でやることができるか否かといったところを面接官側は見ているのかなーと思いました。
AWS未経験という点についての評価
企業によっては、◯年以上のAWS実務経験を必須としているところももちろんあります。
私は満たしておらずそういう募集をされていたところには申し込まなかったのでお話はできません。
「特に記載がない」または、「実務経験有りで確度が上がる」といった旨の記載のあるところでは2パターンでした。
- 実務未経験だが、独学でこれくらいのことができていれば問題ない.
- 実務未経験だから、まずは今までと同じオンプレの業務をメインに段々とAWSの案件に参画していく。
どちらも、未経験をマイナスと捉えているというわけではなく私のキャリアを考えてくださっての評価かと思います。
それほどマイナスに捉えられている印象はありませんでした。
AWSの他にもやっておいてプラスになったことがたくさん
AWSを学ぶ時に、ずっとAWS「だけ」を学ぶのは不十分です。
なぜなら、「AWSでコンテナを稼働させる」とか「AWSでDBを構築する」といった使い方をするので否応なしに関連技術は学ぶことになります。
なので、AWSに限らず関連分野の知見を少しでも持っているとかなりプラスのイメージを持ってもらえる印象です。
もちろん最初は 、AWSに集中して使ったサービスに関連する知識を取り込んでいくという方法で良いと思います!
学習は、最初に記載した4つと同じ方法で行いました!
IaC
AWSに限らず、サーバ、ネットワーク、サービスをコードから作成する技術で、AWSではCloudFormationというサービスで提供されています。
他にもサードパーティーのツールとしてTerraformなどがあり、クラウド上での環境構築では主流になっているのかなと言った印象です。
Terraformについては本ブログでも取り上げているのでぜひご覧ください。
コンテナ
プロセスを1つのコンテナとして独立させることで、可搬性やシステム全体の可用性を向上させる技術で、AWSではECSやEKSといったサービスで提供されています。
プログラミング
これは趣味程度でやっていたのですが、python、ruby、php、javascriptなどをyoutubeの動画を見ながら真似していました。
そこからスクレイピングをやってみたり、javascriptでtodolistを作ってみたりすることで面接時に「独学ですが、この程度はできます」といった会話をすることができました。
AWSでもlambdaというサーバレスアプリケーションを提供するサービスでJavaやpythonといった言語が使われています。
他にもいろいろ手をつけていましたが、特に時間をかけたのはこの3つ。
IaCとコンテナは現職でもバリバリ使って仕事をしています。
最後に
今回の記事で一番お伝えしたかったことは「とにかく手を動かしてAWSを触ってください!」ということです。
インプット3割、アウトプット7割ということを聞いたことがありますがまさにその通りだと思います!
文書や動画を「見ただけ」ではノウハウとして自分の中でとどめていることは難しいです。
どうやって勉強したら良いかわからない場合、とにかく見様見真似で触ってみるというのも一つの手ですし、そこから何が自分に足りてないのかも見えてきます。
自分が学習する時ハンズオン動画やIT関連の記事に大変お世話になった経験からこのブログでもそういった内容を投稿していこうかと思っております。
今回の内容では実際に触ったサービスなどはご紹介できませんでしたからね。
何をやったらいいかわからない時に「そういえばあのブログでもハンズオン系の記事を投稿してたよなー」と思い出していただければ幸いです!(まだ検索上位に出てこないので!)
コピペでも動くレベルのをもちろん提供したいと考えていますが、読んでいただいた方にはぜひ、その後自由に改変していただきたいと思っております。その方が絶対身に付きます!
転職活動の中で大切だなーと感じたのは、必要な技術を身につけていることと面接の時にそれをしっかりアピールできることだと感じました。
最後までご覧いただきありがとうございました!