SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

プラットフォームづくりを成功に導く!開発者のための「Platform Engineering」入門

Platform Engineeringとは何か? なぜ注目されているのか

第1回 Platform Engineeringのメリットと、登場の背景

  • X ポスト
  • このエントリーをはてなブックマークに追加

 近年急速に注目を浴びている「Platform Engineering」。本連載ではPlatform Engineeringとは何か、そのメリットについて解説します。第1回は、Platform Engineeringとは何か、そして注目されている背景について紹介します。

  • X ポスト
  • このエントリーをはてなブックマークに追加

はじめに

 みなさんはPlatform Engineeringという言葉を聞いたことはありますか?

 近年急速に注目を浴びつつある技術分野で、Gartner社による2024年の戦略的技術トレンドTop10[1]に入るなど、非常に期待されている考え方です。技術トレンドの多くがAI関連の技術に占められる中でも存在感を発揮していることからも、その関心が伺えます。

 では、このPlatform Engineeringとは、一体どのような考え方で、どのようなメリットをもたらしてくれるものなのでしょうか?

 本連載では、Platform Engineeringとは何か、そのメリットや実践など、さまざまな観点から解説していきます。前半では理論編として、既に提唱されているソフトウェア開発の重要な考え方(Team Topologies、SRE、プロダクトマネジメント等)との関係を整理していくアプローチを中心にPlatform Enginneringの理解を深めていきます。

 後半には実践編として、Internal Developer Portalのハンズオンや、Platform Engineeringを実践している企業の事例紹介なども企画しています。

[1] Gartner Identifies the Top 10 Strategic Technology Trends for 2024

右肩上がりする開発者の認知負荷

 まずはPlatform Engineeringが注目される背景から説明しましょう。

 近年開発者の間で用いられることが増えてきた言葉として、「認知負荷」があります。たとえば開発者がアプリケーションの開発を行ったとします。アプリケーションをサービスとして公開するためには、インターネットから利用可能になるようデプロイを行う必要がありますね。

 デプロイ先として、今であればクラウドを利用するのが一般的でしょう。ですが、クラウドと言ってもたくさんのサービスがあります。AWS、Azure、Google Cloudといったメガクラウドもありますし、Vercelのようなアプリケーションプラットフォーム、Cloudflareなどが提供するエッジコンピューティングのサービスなど、さまざまな選択肢が溢れかえっています。

 メガクラウド1つに絞ったとしても、そこにはVMの他にコンテナを動かすサービス、マネージドKubernetes、サーバーレスなど数え切れないほどの選択肢があります。自分のアプリケーションに適したサービスはどれなのか、調べるだけで数日かかってしまいそうです。

 頭を悩ませるのはクラウド環境だけではありません。コンテナを作ってデプロイする場合は、手元でコンテナイメージを作成するためのDockerfileを書く必要がありますし、継続的にテストを回していくためのCIパイプライン、デプロイを自動化するCDパイプラインも必要です。

 その他、会社によってはセキュリティスキャンも必要とされているでしょうし、他にもあれこれ設定しないといけないものがあるでしょう。

 そう、現在の開発者は、アプリケーションを開発するだけでなくこれらの環境にまで気を配る必要があるのです。考えることが多すぎて、学習も頭の切り替えも大変ですね。この大変さのことを、「認知負荷が高い」状態と呼びます。

開発者の認知負荷の変遷(「Platform Engineering 101: What You Need to Know about This Hot New Trend」を元に筆者作成)
開発者の認知負荷の変遷(「Platform Engineering 101: What You Need to Know about This Hot New Trend」を元に筆者作成)

 10年ほど前までは、ここまで認知負荷は高くありませんでした。ですが、クラウドの普及やコンテナをはじめとしたクラウドネイティブ技術の登場、マイクロサービスアーキテクチャの浸透、DevOpsの普及に基づいたエンジニアの担当範囲の拡大などが原因となり、世界中で認知負荷の増大が課題となっているのです。

 本来注力すべきことに集中できない認知負荷の高さは、生産性の低下をもたらします。一説によると、開発者は1日のうち1時間以下しかコーディングに時間を割けていないとも言われています[2]

 また、人手不足が深刻化する昨今、開発もクラウドも自動化も得意とするエンジニアの確保は非常に困難です。開発効率以前に、人がおらず何も始められないというリスクがあるのが、昨今のITを取り巻く環境です。

[2] Global Code Time Report

会員登録無料すると、続きをお読みいただけます

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

次のページ
Platform Engineeringの登場と、その役割

この記事は参考になりましたか?

  • X ポスト
  • このエントリーをはてなブックマークに追加
プラットフォームづくりを成功に導く!開発者のための「Platform Engineering」入門連載記事一覧

もっと読む

この記事の著者

草間 一人(jacopen)(クサマ カズト)

 PagerDuty JapanのProduct Evangelist。一般社団法人クラウドネイティブイノベーターズ協会の代表理事も務めており、クラウドネイティブ技術やPlatform Engineeringの普及に貢献している。Platform Engineering MeetupやCloudNa...

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

  • X ポスト
  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/18752 2023/12/06 11:00

おすすめ

アクセスランキング

アクセスランキング

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング