「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
JINS、AIによる未来予測型経営システムを運用開始
IT関連
2022-02-10 12:59
中国Mooer Audioがエフェクト・ドラムマシン・ルーパー内蔵のエレキギターを開発中
ハードウェア
2021-05-19 17:27
ネット印刷・集客支援などのラクスルがダンボール・梱包材専門通販ECサイトのダンボールワンを完全子会社化
IT関連
2022-02-02 08:20
リモートで働く新入社員向けのハードウェア選択・配布を支援するFirstbaseが約60億円調達
IT関連
2022-03-27 04:01
ワークスアプリ、マルチブックと協業–海外拠点の経営管理/経理業務を効率化
IT関連
2023-06-01 09:17
UiPath、「UiPath Autopilot」発表–業務でのAI活用を実現
IT関連
2023-10-25 23:20
Google、iPaaS「Application Integration」正式リリース。Salesforceやkintone、BigQuery、MySQLなど多数のサービスをGUIで接続
Google Cloud
2023-07-25 04:22
Microsoft Teamsの個人向け無償提供が正式にスタート。友人や家族とのチャット、ToDoリストの共有、当面は300人24時間まで無料のビデオ会議など提供
Microsoft
2021-05-18 05:55
「ChatGPT」、史上最速でアクティブユーザー数1億人に到達か
IT関連
2023-02-07 00:28
混合現実ベースのバーチャルイベントプラットフォーム拡大でTouchCastが約58億円調達
ネットサービス
2021-02-21 22:49
AWS、アレクサと同様の会話理解力を持つ「Amazon Lex」日本語対応を発表。日本語で会話する音声ボットやチャットボットが開発可能に
AI
2021-04-07 12:44
2021年のデータ侵害件数、米国で68%増–過去最高に
IT関連
2022-01-27 18:16
輸送用機器製造のIJTT、鋳造ホストシステムを脱メインフレーム化
IT関連
2023-10-19 18:30
VCマネーの2%しか女性起業家に注がれない–VC立ち上げから5年、セリーナ・ウィリアムズ氏の挑戦
IT関連
2022-12-30 08:44