7. クラウドエンジニアに求められるスキル
クラウド案件でのインフラエンジニアの担当領域を一通りご紹介しましたが、次に、クラウドエンジニアに求められるスキルについて記載したいと思います。
対応する領域により求められるスキルが変わるため、ここではWebシステムを前提に記載させて頂きます(IoTやAI、機械学習などは別のスキルも必要になると思います)。
AWSやAzureといったクラウドの基本知識
当たり前ではありますが、AWSやAzureといったクラウドの基本知識は必要になります。
とはいえ、クラウドには数多のサービスがありますから、まずはIaaSやDBなどの基本的なところを抑えるべきです。具体的には、オンプレのシステムをクラウド上で構築した場合のクラウドデザインができれば良いと思います。
PythonやJavaなどのプログラミングスキル
最近のクラウドサービスは、Infrastructure as Codeの考え方を前提にして構築や運用を考える場合もあるため、クラウドサービスでよくつかわれているYAML、PythonやJavaといった言語でのプログラミングのスキルは、インフラエンジニアでも求められる機会が多くなるため、必須レベルではありませんが、今後のことを考えると身に着けておくと良いでしょう。
ウォーターフォール開発の知識、アジャイル開発の知識
クラウドのシステム構築も基本的にはウォーターフォール開発が多いです。その点は従来のオンプレと同様であるため、ウォーターフォール開発の知識は必須になってきます。
近年はアジャイル開発も取り入れてる案件もあるため、アジャイル開発手法を理解しているとなお良いです。
ウォーターフォール開発が染みついている会社では、完全にアジャイル開発に切り替えることがなかなか出来ていませんが、積極的に検討している会社は多いので、アジャイル開発が今後のデファクトスタンダードになる可能性もあります。
最新技術のキャッチアップ
クラウドのサービスは毎年新しいサービスが誕生し、既存のサービスも機能追加や仕様変更が多々発生します。
これらの情報をキャッチアップしていくことはクラウドエンジニアには必須になります。
古い仕様しか理解していないままシステム設計をすることは避けなければいけません。
キャッチアップは能動的に行う必要がありますので、常にアンテナを張り、クラウド業界の動向や情報を収集するぐらいの姿勢がないと、第一線で活躍することは難しいでしょう。
8. クラウドエンジニアになるための準備
インフラエンジニアがクラウドエンジニアになるための準備について記載させて頂きます。※アプリケーションエンジニアからクラウドエンジニアになるための準備も同様です
基本的には「7.求められるスキル」と同様と考えていますが、ここでは、クラウドの知識の身に着け方について具体的に記載していきたいと思います。
まず、勘違いして頂きたくないのは、クラウドエンジニアだからオンプレ時代のインフラエンジニアの知識が必要なくなるわけではない、ということです。
基本的なシステムの考え方は、HWであり、NW、OSであるため、知識が無駄になることはないでしょう。筆者もクラウド案件を遂行する上で、オンプレで培ったインフラの知識がかなり役になっていると実感しています。
では、クラウドを触ったことない方がどのように知識を身につけていけばよいか、ですが、世の中のクラウドエンジニアも、最初からクラウドが扱えたわけではないのでスタートは一緒だと思います。
まずはAWSやAzureの資格を取得するために勉強をする、というのが、王道ではありますが、まんべんなく知識が身につくので良いと思います。
どのクラウドから?という観点では、AWSが圧倒的なシェアを占めているため、まずはAWSから勉強することをお勧めします。
ただし、資格取得のための勉強はまんべんなく理解できますが、逆にそれが深い知識を得ることが出来ない原因にもなると考えます。実際、筆者が資格を取得していく上で得た知識が実案件に役に立ったかというと、それほど実感はありませんでした。
そのため、資格取得に向けて勉強するのと並行して、AWSの無料利用枠を活用し、実際にクラウドサービスを触りながら勉強することをお勧めします。
頭では理解していたつもりでも、実際に触ってみると勝手が違い、想定通りに使えない、といったことはよくありますよね。
資格の問題を解くときに、ただ解くだけでなく実機を触って答え合わせをするイメージで、実際に手を動かして動作を確認することが、実務で使えるレベルの理解を得るための効果的な方法と思います。
また、ご自身が担当しているシステムや過去に携わったシステムを、AWS上にプロトタイプとして構築してみるのも良いと思います。
具体的なシステムイメージが固まってる状態で、AWSのサービスを組み合わせて簡易的に動作するまで構築してみると、実案件でも同様の作業を行いますので、更に理解を深める上では非常に効果的だと思います(あくまで無料利用枠の範囲内で)。
以上のような、知識を経験で補完する、といったことを繰り返すことで、実案件でも通用するクラウドの知識が蓄積されていくと思います。とにかく、触って動かしてみることが大事だと実感しています。
9. 転職事情(クラウドエンジニアの優位性)
クラウドエンジニアの転職事情について記載させて頂きます。
実際に、筆者もクラウドエンジニアとして転職活動を行い、複数社から内定を頂いたので、経験談も踏まえて記載させて頂きます。
まず、気になるクラウドエンジニアの需要ですが、どこの企業も喉から手が出るほど欲しい!と言い切って良いくらい需要が非常に高いです。クラウドを利用したいという需要は莫大にあるものの、対応できるクラウドエンジニアの供給が圧倒的に足りていないという状況です。
とはいえ、クラウドを経験しているクラウドエンジニアであれば、どこの企業にも入れるかというとそうではありません。
同じクラウドの需要があったとしても、その企業がクラウドを使いたい領域がIoTなのか、AIなのか、によって特性が異なります。いくら経験があったとしても、特性にマッチしたスキルがなければ、当然ながら採用はされません。
次に、企業が重点を置いているクラウドベンダーのスキルとマッチするのも大事です。
筆者は、前職ではAWSを中心に開発を行い、現職ではAzureを中心に開発を行っておりますが、これはその時々で企業が重点を置いているクラウドベンダーが違っていたからです。私は幸運にも2大クラウドを経験することができたのですが、一つしか経験がない場合は、それを求める企業を探す必要があります。
そして、企業が求めているクラウドの種類、領域、スキルがマッチした上で、次に判断材料になるのが経験値です。
「クラウドのスキルはあるけど、経験値が少ない・・・」といったワードは社内でもよく聞きます。それほど、企業は経験値を重要視しています。中途採用では即戦力として採用したいので、当然ではあります。
もっとも、企業によってはオンプレ経験のみでよく、クラウド経験を求めない企業もあります。そういった企業では、クラウドの資格を取得していればアピールポイントになりますので、そのような企業があったときに備え、資格は取っておいて損はありません。
更に、経験してきた案件の規模を問われる場合もあります。
大手のSIerになればなるほど、大規模案件でクラウドを経験しているかどうかが重要視されます。筆者も、自身の転職活動時にもよく聞かれました。
あと、アピールポイントとして、自分の強みの領域があると、企業へ与える印象も違ってきます。まんべんなくできることも大事ですが、経験にある程度の特徴がないと、いくらクラウド経験があったとしても、選考においてインパクトに欠ける可能性があります。
筆者は転職活動時、Kubernetesなどのコンテナ技術の知見があり、講演も行った経験がありましたので、面談時に大きなアピールポイントになり、複数の会社から内定を勝ち取ることが出来ました。講演経験まではなかなか得られないと思いますが、注目度の高い技術領域の知見を持っておくとアピールになると考えています。
まとめますと、
- クラウドエンジニアの需要はかなりある
ということができます。
しかし、転職活動していくうえでは、
- 企業の求める領域とマッチする必要がある
- 案件の経験値はある程度必要
- 大規模案件も経験していると良い
- クラウド領域でのアピールポイントを作る
が経験上、大事だと考えます。
10. クラウドの向かう未来
最後に、今後のクラウドの向かう未来はどうなっていくのかについて、筆者の独断と偏見で記載させて頂きます。
先に記載させて頂いた通り、2つポイントがあると考えています。
- AWS、Azure、GCPでオンプレを意識したサービスの展開
- コンテナの普及
今までは、「オンプレのシステムをクラウドに移行する」「クラウドで開発する」など、クラウド上でシステムを稼働させることが主流となり、いかにシステムをクラウド上で稼働させるかが焦点となってきました。
しかし昨今、各クラウドから、オンプレ互換のサービスが発表されるなど、オンプレの見方が変わってきています。
これは、オンプレとクラウドを合わせたマルチクラウドを意識したサービス展開だと考えています。
実際、個人情報やセキュリティレベルが高い情報をクラウドに置くことを嫌う企業は多く、オンプレのDBに格納し、フロントはクラウド上に構築する、という構成をとるシステムも増えてきています。
とはいえ、クラウドは使い勝手が良いですから、オンプレでもクラウドのメリットを享受する意味で、オンプレ互換のサービスが発表されているのでしょう。
実際に利用している企業はまだ少ないと感じていますが、今後の動向次第ではスタンダードになっていくのではないかと思います。
また、その動向に拍車を掛けているのがコンテナの普及だと思います。
コンテナは、オンプレやクラウドのプラットフォームを選ばずに同じ動作を実現することが可能ですから、災対環境として、オンプレとクラウドを組み合わせて行き来させることも容易です。
オンプレとクラウドを組み合わせたマルチクラウドの時代がやってきて、最終的には全ての企業がオンプレ環境に今のパブリッククラウドを動作させる、といった時代が来るかもしれません。