SHOEISHA iD

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

DeveloperZine(デベロッパージン)- エンジニアの意思決定を支える技術情報メディア ProductZine

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

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

Platform EngineeringはこれまでのSREやインフラチームと何が違うのか?

第2回 Platform Engineerの役割と、SRE、インフラエンジニアとのアプローチの違い

プラットフォーム作りにありがちな失敗

 過去数多のプラットフォームが生まれては定着せずに姿を消してきました。長く利用されるプラットフォームを作るのはとても難しいことです。ここでは、定着せずに消えていったプラットフォームはどのような特徴があったのかを説明します。

  • 生まれながらに失敗しているパターン
    • 開発者が欲しいものと全然マッチしていなかった
    • 長期間開発し頑張って作り上げたが出した際はすでに技術が廃れていた
  • 運用されずに失敗するパターン
    • 特定の技術に依存していたため技術が廃れるのと同時に使わなれなくなった
    • プラットフォームがリリースされたのと同時にプロジェクトチームが解散されメンテナンスされなくなった
    • コストセンターと見なされ予算が割り振られなくなってプラットフォーム自体が縮小していき使われなくなった

 上記のように失敗のパターンは数多く存在しますが、これらは先ほど説明した、「誰に」「何を」「どのように」の部分で利用者が求める価値と乖離してしまったことが原因です。継続的に「誰に」「何を」「どのように」の部分をアップデートし、利用者の求める価値を満たすプラットフォームを提供し続けることが求められています。

インフラチーム、SREチームとの違い

 Platform Engineeringを話す上で、インフラエンジニア、SREとの違いに困惑される方が多いと思います。それぞれの役割とアプローチから、どのような違いがあるのかを考えていきます。

 Platform Engineeringを担うPlatform Engineerは、開発者の開発効率を向上させる、いわゆるDX(デベロッパーエクスペリエンス)の向上に関心があるため、開発者の声を聞いて開発者のペインを解消するためのソリューションを提供します。

 続いてSREはシステムの信頼性の担保に関心があるため、提供されているシステムを測定可能なサービスレベル(SLI、SLO、SLA)で表し、サービスレベルを満たすための活動を行います。

  • サービスレベル指標(SLI:Service Level Indicators)とは、システムの可用性を特定するための主要な測定値およびメトリクスです。
  • サービスレベル目標(SLO:Service Level Objectives)とは、外部からシステムに対して期待される可用性に関して設定された目標です。
  • サービスレベル契約(SLA:Service Level Agreements)とは、合意された内容およびシステムがSLOを満たさなかった場合の対応を説明した契約です。

 最後にインフラエンジニアはアプリケーションが動くためのインフラ基盤の提供に関心があるため、サーバーの選定、ネットワークやセキュリティの構築、ストレージサイズの選定といった活動がメインになります。

 上記の違いをまとめると以下のようになります。各々クラウドといったITインフラを触るという点では似たように思われるかもしれませんが、役割やアプローチがそれぞれ違うことが分かっていただけたかと思います。

Platform Engineer、SRE、インフラエンジニアの違い
Platform Engineer SRE インフラエンジニア
役割 開発者の開発効率を向上させる、プラットフォームの提供 システムの信頼性と可用性の担保 アプリを動かすためのITインフラ全体の設計・構築・運用
アプローチ 開発者が求める価値を満たすソリューションを提供し続ける SLI、SLO、 SLAといった定めた指標を元に、運用を改善をしていく アプリケーションの可用性を満たすサーバー・ネットワーク・ストレージといったインフラを提供する

おわりに

 第2回ではこれまでのプラットフォームと何が異なるのか、およびインフラエンジニアやSREとの違いを解説しました。プラットフォームの違いに関しては、過去のプラットフォームの失敗を踏まえ、toCにサービスを提供する場合と同じように「誰に」「何を」に注目してプラットフォームを提供することがポイントでした。また、インフラエンジニアやSREとの違いのパートでは、各々の役割とアプローチの違いに関して分かっていただけたと思います。

 第3回では「Team topologies」や「Platform as a Product」といった考え方を説明します。

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

連載通知を行うには会員登録(無料)が必要です。
既に会員の方はを行ってください。
プラットフォームづくりを成功に導く!開発者のための「Platform Engineering」入門連載記事一覧

もっと読む

この記事の著者

渡邊 武志(Buzz)(ワタナベ タケシ)

 株式会社エウレカ所属。国内利用率No.1を誇る恋活・婚活マッチングアプリPairsにおける新機能開発を行うプロジェクトにてテックリードを務める。本業以外では、SRE NEXT、 Platform Engineering Meetup、 CloudNative Daysといった大規模ミートアップやカ...

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

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

この記事をシェア

CodeZine(コードジン)
https://codezine.jp/article/detail/18856 2024/01/19 11:00

イベント

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

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

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

メールバックナンバー