みなさん、こんにちは。Red Hatの松田です。
このコラムでは、クラウド時代のエンジニアに必要とされるスキルを効率よく身につけるための方法として、Red Hatのトレーニングを紹介します。
企業がシステムの構築先として、クラウドを選択するのが当たり前になってきた今、エンジニアに求められるスキルセットも大きく変化しています。クラウドネイティブな開発は、開発プロセスも、アプリケーションアーキテクチャも大きく変わります。
以前はウォーターフォールが基本でしたが、今は短い開発サイクルを繰り返しながら本当に必要なものだけを短期間で作る、アジャイルが徐々に浸透しつつあります。更に、DevOpsと言われる、開発チームと運用チームが密に協力しながら効率的に開発を進める体制をとる、という考え方が広まってきています。
アプリケーションアーキテクチャは、巨大な一枚岩のモノリシックなアーキテクチャではなく、小さな疎結合のサービスを組み合わせて、開発や変更が柔軟かつスピーディーに行える、マイクロサービスアーキテクチャに変えていく流れがあります。
アプリケーションのデプロイやパッケージングの方法は、アプリ毎に大きなサーバーを用意して環境構築してデプロイするという従来のスタイルではなく、マイクロサービス化したアプリをコンテナという単位で管理して、コンテナ基盤上にすばやくデプロイするというスタイルに変わりつつあります。
そして、これらのクラウドネイティブ開発の各要素は、総合的に取り入れることで初めてその効果を最大限に発揮することができます。