「Platform Engineeringへの招待」、開発者の生産性を高めるプラットフォームを作り、運営していくための考え方とは(前編)。Platform Engineering Meetup #1

今回は「「Platform Engineeringへの招待」、開発者の生産性を高めるプラットフォームを作り、運営していくための考え方とは(前編)。Platform Engineering Meetup #1」についてご紹介します。

関連ワード (注目、突然話題、結果等) についても参考にしながら、ぜひ本記事について議論していってくださいね。

本記事は、Publickey様で掲載されている内容を参考にしておりますので、より詳しく内容を知りたい方は、ページ下の元記事リンクより参照ください。


急速に注目を浴びつつある新しいムーブメント「Platform Engineering」についてのコミュニティイベント「Platform Engineering Meetup #1」が3月9日に都内でオンラインとオフラインのハイブリッドで開催されました。

Platform Engineeringとは、クラウドネイティブ時代においてソフトウェアエンジニアリング組織にセルフサービス機能を提供するためのツールチェーンやワークフローを設計し構築する技術分野とされています。

その最初のセッションとして行われた、イベントの主催者である草間一人氏の「Platform Engineeringへの招待 – Platform Engineeringって何? 何故今注目なの?」の内容を紹介しましょう。

記事は前編と後編に分かれています。いまお読みの記事は前編です。

Platform Engineeringへの招待

草間と申します。インターネット上では@jacopenという名前でよく出てきますので、よろしくお願いします。

普段はHashiCorpという会社で仕事をしています。

Cloud Native Daysというカンファレンスを青山くん(@amsy810)と一緒にやっていたり、PaaSに関する勉強会をやったりもしています。

もともと国内の通信事業者でCloud FoundryというオープンソースPaaS(Platform as a Service)を利用したサービス開発をやっていたのですが、その流れからCloud Foundryの開発元であるPivotalという会社に転職しました。

その後PivotalはVMwareに買収されたので、VMware社員としてKubernetesやCloud Foundryを用いた製品をお客様にデリバリーする仕事や、プラットフォームチーム作りを支援する仕事をやっていました。

なんだかんだで私はプラットフォームに関わる仕事をやって10年以上経ったんですね。

そのあたりの知見も踏まえてお話できればと思っています。

Platform Engineeringって何だろう

「Platorm Engineering」が突然話題になってますよね。

面白かったツイートがあったのでちょっと貼ってみましたが、これはDevOpsと言っていたみんなが急にPlatform Engineeringへ流れ始めているよね、と。

そこで、そもそもPlatform Engineeringって何だろう、という話をさせてください。

Platform Engineeringという考え方は突然出てきたのではなく、以前から使われていた用語でしたし実践されてる方も多かったんです。

ただ、世の中に広がり始めたきっかけはガートナーのハイプサイクル2022で左下のあたりの、まさにこれから盛り上がっていくぞ、みたいなところに登場したのが大きかったのかなと思っています。

参考:米ガートナー「先進テクノロジーのハイプサイクル2022年」を発表。分散IDやWeb3は過度な期待、機械学習によるコード生成、デジタルヒューマンなどは黎明期

それによると2026年までに、ソフトウェアエンジニアリング組織の80%がPlatform Engineeringのチームを結成し、そのうち75%はセルフサービス開発者ポータルを取り入れる、と書いてあります。

ただ、Platform Engineeringには、今のところ決まった定義はありません。

ガートナーが出している定義もあれば、PlatformEngineering.orgというWebサイトがあって、そこで書かれてる定義などもあります。

これらに共通するところを抜き出すと、Platform Engineeringとはこういうことだと言えるのかな、というのを書いてみました。

「Platform Engineeringとは、開発者体験と生産性を向上させるために、セルフサービスで利用できるツールチェーンとワークフローを設計・構築する分野」

Platform Engineeringが注目される背景

Platform Engineeringが注目されるようになった背景について考えてみましょう。

クラウドが登場する前からITのシステムはありました。

その時代は開発者(Dev)とシステム管理者(Ops)は別の組織になっていて、開発者はシステム管理者に、環境を構築してくださいとお願いしたり、アプリケーションをデプロイしてくださいとお願いしたりしていた。これが一般的だったわけです。

ただこのスタイルでは問題がありました。DevとOpsはそれぞれサイロ化しやすく、組織から組織に仕事を依頼する形になるので、どうしてもコミュニケーションのコストが大きくて、そこがボトルネックになってしまう。

システム管理者が忙しすぎてソフトウェアがデリバリーできない、といったことが起きていたわけなんです。

これが変わり始めたのが、クラウドの登場ですよね。

クラウドが登場したことで、APIドリブンで環境を払い出せるようになりました。そして、開発とシステム管理の垣根をなくしてDevOpsを実現し、ソフトウェアのデリバリーを継続的にやっていこう、みたいな機運も出てきました。

このどちらが先かは諸説あるんですけども。

そこで「真のDevOps」と書いたのですが、自動化のためのツールチェーンなどが出来上がってくれば、その気になれば開発者が開発もテストもデプロイも、やろうと思えばできるわけです。

やろうと思えば。

ですが現実問題として、どうですか。皆さん、やりますか? 実は多くの組織にとって、これは現実的ではないんです。

ツールやフレームワークがありすぎる

なぜかというと、特にクラウドネイティブの時代になってからは、たくさんツールなどを使いますよね。

KubernetesやDockerだけでなく、いろんなフレームワークやツールがあって、とにかくいろんなツールを組み合わせてアプリケーションの開発やデプロイをしています。

これを1人の開発エンジニアや1つの開発組織で全部やっていくのはしんどいわけです。

「認知負荷が高い」という言い方をしたりしますが、とにかくいろんなソフトウェアやツールやサービスに気を使わなくてはいけないので、1つのことに集中できず、結果として生産性が高まらない。

2010年頃にHerokuとかCloud FoundryなどのPaaSによって認知負荷は減るのかな、という流れはあったのですが、その後のクラウドネイティブの時代になると、いろんなツールがあふれかえってきて、認知負荷はもう右肩上がりです、というのが現状だったりします(参考:Platform Engineering 101: What You Need to Know about This Hot New Trend – InfoQ)。

どうするか:よくあるアンチパターン

じゃあどうするか。

かつてのDevとOpsが分かれていた時代に戻したくはないですよね。

そこでDevとOpsがサイロ化しないようにと考えた結果、開発チームのそれぞれにOpsを担う人材が出てくる。チームの中にKubernetesのManifestを書くのが得意な人がいて、その人にお願いしてしまうとか。

特定の人がチーム内のOps担当みたいになって、そうした仕事が集中してしまう。

多くの場合、そうしたOpsもできる有能な開発者は知見も豊富なハイパフォーマーであることが多くて、その人にOpsの仕事が集中してしまうとすれば、チームの生産性が最大化できているのかというとそうではないのではないか、となります。

DevとOpsがサイロ化しないように考えたのに、これはアンチパターンになってしまうんですね。

そこで出てくるのが「Internal Developer Platform」というもので、これはPlatform Engineeringを調べるとよく出てくる単語だと思います。

社内向けのプラットフォーム:Internal Developer Platform

Internal Developer Platformは、「プラットフォームチーム」というチームが作っていく開発者がセルフサービスで利用できる基盤です。

いろんなツールを組み合わせる形で構成されていて、あんまり抽象化しすぎることなく、開発者の認知負荷を軽減していく、といったものです。

この辺りの考え方、つまりチームを分割してプラットフォームチームに切り分けて、そこでX-as-a-Serviceみたいな形で連係していくのは2~3年前から話題になっている「Team Topologies」(書籍:チームトポロジー 価値あるソフトウェアをすばやく届ける適応型組織設計)の考え方も影響が大きいのかなと思っています。

Team Topologiesは、価値のあるソフトウェアを素早く届けるようにしていくための組織設計の考え方を示しています。

そこでは4つのタイプのチーム「ストリームアラインドチーム」「イネイブリングチーム」「コンプリケイテッド・サブシステムチーム」「プラットフォームチーム」があって、チーム間の連携としては3つ、「ファシリテート」「コラボレーション」そして「X-as-a-Service」があります。

Platform Engineeringは、ストリームアラインドチームに対してプラットフォームチームがX-as-a-Serviceで関与する、というパターンが近いのかなと思いつつ、実際のところはもう少し複雑だったりするかもしれません。

≫後編に続きます。後編では、「Platform as a Product」という考え方について紹介します。

COMMENTS


Recommended

TITLE
CATEGORY
DATE
温度測定結果の表示可能、顔認証で入退室できるクラウド型サービス「Safie Entrance2」を提供開始
IT関連
2022-03-26 22:11
アプリに音声と動画によるコミュニケーション機能を組み込むVoximplantがベータ版をリリース
IT関連
2022-02-24 18:21
2023年に注意すべき5つのトレンド–ダークトレース・ジャパンの鈴木カントリーマネージャー
IT関連
2023-01-07 08:48
クックパッド、本社を都心→横浜に移転 WeWorkの拠点利用 「オフィスに集まることも重要」
IT関連
2021-01-28 23:39
Switch版「ポケモンユナイト」テストプレイ始まる ポケモンを使った注目のMOBAタイトル
くらテク
2021-06-25 05:15
アフィリエイト規制、責任の明確化が焦点に 消費者庁が初の検討会
企業・業界動向
2021-06-11 14:09
マイクロソフトが推すセキュリティ向けの生成AI、早期検証したNECの評価は?
IT関連
2024-02-28 11:56
Java 21 LTSに対応した無償のJavaディストリビューション「Amazon Corretto 21」と「Microsoft Build of OpenJDK 21」がリリース
AWS
2023-09-28 19:33
「Tableau Online」の後継製品「Tableau Cloud」–ビジネスユーザー向けのデータ分析機能が追加
IT関連
2022-06-10 07:29
AWSとCoursera、DeepLearning.AIが実践的なデータサイエンスの専門講座を開始
IT関連
2021-06-09 15:38
GitLabが身売り先を探しているとの報道、Datadogが買収に興味と。CEOは骨肉腫の再治療へ
DevOps
2024-07-19 13:59
ベルファストの現状と展望について8人の投資家、創業者、経営者に聞く、サイバーセキュリティとフィンテックが旋風を巻き起こす
VC / エンジェル
2021-06-15 18:01
Wovn Technologies、欧州25カ国で特許獲得–ウェブサイト多言語化ソリューション関連技術
IT関連
2023-08-16 17:14
東京大学グリーンICTプロジェクトとNTT Com、建物空間の「デジタルツイン」実証
IT関連
2021-03-26 17:12