用語を整理しながら学ぶプラットフォームエンジニアリング

はじめに

この記事ではMicrosoftが作成するプラットフォームエンジニアリングガイドを読んで用語をひとつひとつ紐解き プラットフォームエンジニアリングを理解していく内容となっています。

learn.microsoft.com

誤りなどがあったら、直していく予定です。

プラットフォームエンジニアリングとは何か

Microsoftが作成するプラットフォームエンジニアリングガイドによると プラットフォームエンジニアリング(以降、PFE)とは以下のように定義されるとのことです。

プラットフォーム エンジニアリングは、DevOps の原則から構築されたプラクティスであり、セキュリティで保護された管理されたフレームワーク内での開発者エクスペリエンスとセルフサービスの向上を通じて、各開発チームのセキュリティ、コンプライアンス、コスト、およびビジネスまでの時間の価値を改善することを目指しています。 これは、製品ベースのマインドセットシフトと、それをサポートするための一連のツールとシステムの両方です。

なるほど。まったくわからん。という感じではあるんですが、つまりPFEは簡単に言うと以下のようにも取れます。

  • 開発者エクスペリエンスを向上しつつ、ビジネス提供までの時間を短縮・改善するためのプラットフォームの設計と構築

「開発者を主体としてプロダクトやサービスを提供するための環境を整備する」とも取れそうです。 たとえば、開発環境構築にかかる時間を短縮して開発に充てる時間をより長く確保するということですね。

そういった開発者向けに提供されるのが、内部開発者プラットフォームというものです。

内部開発者プラットフォーム(IDP)とは

では内部開発者プラットフォームとはどんなものでしょうか。Microsoftが作成するプラットフォームエンジニアリングガイドによると以下のように定義されます。

内部開発者プラットフォームは、認知負荷と手動の手順を減らすか、または排除することで、開発と運用のライフサイクル全体にわたって専門的な知識を一元化し、スケーリングするのに役立ちます

つまりは内部開発者のナレッジを一元的に管理して容易に利用できるようにし、認識の負荷を軽減するものです。 また、舗装されたパス(ゴールデンパス)を提供するものとも言えます。

簡単に説明すると、ゴールデンパスというのは「実際の仕事に取り掛かるまでに発生する手間を省くためのテンプレート」です。何か新しい業務に取り掛かろうと思った時にその業務に取り掛かるまでに必要な準備を容易にするものとも定義できます。

なお、「何かをはじめようと思ったときにセルフサービスが自社内にある」ということは内部開発者プラットフォームが存在すると言えます。

内部開発者プラットフォーム(IDP)を作るには

内部開発者向けのプラットフォームを作るにあたって重要なことは最初からなんでも詰め込みすぎないことです。 必要最小限が何かを定めてスタートすることが良いとされています。実用最小限でPFEを始めるということです。

よくある誤解

クラウドサービスというものにはSaaSという提供形態が存在します。これらを使って開発環境を整備することはPFEと呼びません。SaaSを導入することはPFEではありません。ただし、PFEの中でSaaSが利用されていることはあります。

まとめ

今回はプラットフォームエンジニアリングの概要を確認しました。 内部開発者プラットフォームやゴールデンパスという言葉が理解のヒントになりそうです。

つぎはプラットフォームエンジニアリングの原則を確認します。

おわり