AWSを触ってみました
私はSEとして就職した時から、エンジニアは全レイヤーが分かってこそ本物だと思ってきました。そのため、アプリケーションエンジニアでありつつも、DB、サーバ、ネットワークなども学び、将来は全部できる人材になりたいと思って勉強をしていました。
しかししかし、現実はそう簡単にはうまくはいかないもの。アプリケーションレイヤーだけでも奥が深く、SEをしていた5〜6年で、アプリケーションアーキテクトの端くれになるのが精一杯でした。
あれから15年以上が経ち、時代はクラウド時代に突入しました。そして、クラウドエンジニアの募集が増え、クラウドエンジニアになりたいという方も増えてきたため、先日UdemyでAWS入門を受講してみたところ、クラウド凄いな!と素直に思いました。それと同時に、いよいよITエンジニアは全レイヤーをカバーしなければいけない時代になってきたことを実感しました。
アプリケーションエンジニアにとっては便利なもの
もともと私はアプリケーション畑なので、クラウドの何がいいのかがいまいちよく分かりませんでした。
実は今でも、Udemyでアプリを作るまでには至ってないので、その良さを体感することができていません。
ただ、自社システムのリプレイスをする中で、AWSのSESやS3を使っていて、こりゃ便利だなと思いました。ロジックを組んだわけではないので本当は大変なのかもですが、メールやストレージの機能を自分で1から作る必要がなく、高度なサービスをさっと利用することができるので、凄く開発効率が上がるんだろうなと思いました。
私が最後にコーディングをしたのはメール送信機能だったのですが、ブランクがあったこともあって、良いものを作ることが出来ませんでした。メールなんて汎用的なものなんだから、さくっと外部サービスを使えればなあと思ったものですが、恐らくいまならAWS SESでそれが可能なんだろうなと思っています。
高機能なサービスが使えて楽だな!時間をかけずにいろんなサービスを手早く作れて楽しいな!というのが、多分、クラウドを使った経験のあるアプリケーションエンジニアの方の思いかなと想像しました。
また、インフラを自分で触れるのも便利だなと思いました。アプリケーションを動作させるにあたり、時にインフラ面での制約が発生したりします。そういった時に、インフラチームとの調整が必要になるのですが、お互いの専門性が異なるため、認識合わせや調整に苦労したものでした。
最近は、アプリケーションエンジニアにクラウド設定も任せるケースが増えてきています。チーム間で余計な調整をする手間が不要になったのも良いなと思いました。
インフラエンジニアにとっては希望しかない
インフラエンジニアの方にとっては、クラウドはもう希望の塊でしかないように思えました。
Udemyの入門編では、WordPressサーバを立てる前まで手順を進めたのですが、ネットワークとサーバの構築があんなに短時間でできるのに驚愕しました。
しかも、ネットワークを分けたり、複数サーバを立てて連携させるといったことも、もちろん一定のコマンド入力はあるものの、ほぼコンソール上で設定をするだけでできました。
何が良いって、インフラやネットワーク特有のコマンドを大量に覚えることに時間を割く必要がなく、技術の本質的理解やビジネスと関連させての設計に頭を使うことができるんですよね。
セキュリティを考えるとこういうネットワーク構成にしないといけないよね、じゃあこうサブネットを設定するか、とか、パフォーマンスを考えると同じリージョン内でサーバを置いたほうがいいけど、災害対策的にこのサーバは別リージョンで置いておくのが無難だよね、など、ビジネスを考え、システムとしてのあるべき姿を全体感を持って考えながら設計・構築まで落とし込んでいくことができます。
これまで、インフラエンジニアやネットワークエンジニアの方は、それぞれの技術の専門性の深さゆえに、その領域に特化したキャリアになりがちでした。それはそれで良いキャリアを作ることは可能なのですが、システム全体であったり、さらにその先の業務やビジネスにまで思いを馳せたい方にとってはキャリア的に閉塞感がありました。
しかし、クラウドの登場により、極端に言えば、1人で大規模インフラを作れてしまうようになりました。これはもう革命であると言っても過言ではありません。
加えて、クラウドは、Pythonなどのメジャーなプログラミング言語で運用自動化などを行なっていくため、インフラエンジニアでありながらプログラミングスキルも身に付けることができます。サーバレスアーキテクチャでアプリケーションを作ったり、更にスキルを獲得して、フルスクラッチでのアプリケーション開発にチャレンジすることも可能となりました。
クラウドにより、インフラエンジニアの方のキャリアは無限の広がりを持ったといっても過言ではないと思います。
クラウドをやろう!
まだまだシステムの現場では、オンプレでのレガシー開発がたくさんあります。それはそれで大事なので頑張って頂く必要がありますが、クラウドを実務で関われなくても腐る必要はなく、無料利用枠を使えばプライベートでいくらでも触り学ぶことができます。
恐らくこれから、フルスタックとわざわざ言わなくても、多くの技術者がどのレイヤーもできることが求められる時代になっていくでしょう。クラウドは、私のようなITの現場から離れた人でも触ることができるものですので、まだクラウドを触ったことのない方は、いまからでもぜひクラウドの学習を始めて頂ければと思います。