SHOEISHA iD

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

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

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

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

Platform Engineeringの2つの「IDP」~Internal Developer Platformとは?

第4回 内部開発者プラットフォーム(IDP)を構成する5つのコンポーネント

価値のあるInternal Developer Platformを提供するために

 IDPを構築する際、「Platform as a Product」という考え方は、その成功の鍵を握ります。このアプローチを取ることで、IDPは単なるツールや技術の集合体以上のものになり、開発者が実際に必要とする価値を提供するプラットフォームになります。以下の重要なポイントに注目することが、開発者にとって真に価値のあるIDPを提供するためには不可欠です。

  • ユーザー体験を追求する:IDPは、開発者が直感的に理解でき、簡単に利用できるUI/UXを備えているべきです。開発者がプラットフォームを利用する際の認知負荷を軽減し、ストレスフリーな体験を提供することが、長期的な成功に繋がります。
  • 開発者のニーズに寄り添う:開発者が直面している実際の課題を理解し、それらを解決する機能を優先して提供することが、有効なIDP構築の出発点です。これを達成するためには、定期的に開発者からフィードバックを収集し、そのフィードバックを基にプラットフォームを継続的に改善していくプロセスが必要です。
  • 最低限のプラットフォームを保つ:効率的なプラットフォームは、常に「必要最低限」の機能を提供します。このアプローチにより、余計な機能による混乱を避け、プラットフォームの複雑さを最小限にできます。
  • 利用を強制しない:開発者にプラットフォームの利用を強制するのではなく、利用することのメリットを明確にして、開発者が自発的にプラットフォームを選択するように促すことが重要です。

 これらの指針を基に構築されたIDPは、開発者にとって真に価値のあるリソースとなり、プロジェクトの効率化、品質の向上に貢献します。

 開発者にとって使いやすく、価値あるプラットフォームにするには、ユーザー体験の向上が欠かせません。その鍵となるのは「開発者ポータル」です。

開発者ポータル

 開発者ポータルは、IDPを操作するためのインターフェースであり、開発者がアプリケーションの構成管理、環境の作成、デプロイメントといった多岐にわたる作業を統一されたインターフェースで操作できるようにしたものです。このポータルを利用することで、開発者はプラットフォーム上で必要な操作を直感的かつ効率的に行うことができ、開発効率の向上とプロセスの簡素化が実現します。

開発者ポータルからIDPを操作する
開発者ポータルからIDPを操作する

 この開発者ポータルのことを、Internal Developer Portalと呼びます。Internal Developer Portalという用語は、よくInternal Developer Platformと同じIDPの略称で呼ばれます。 IDPがPlatformを指しているのかPortalを指しているのかは、文脈によって決まるので、注意が必要です。

 開発者ポータルを構築する代表的なツールとして、Backstageが挙げられます。

Backstageの公式サイト
Backstageの公式サイト

  BackstageはSpotifyによって開発されたオープンソースの開発者ポータルで、ソフトウェアカタログ、ドキュメント、Kubernetesの情報など、開発に必要な情報を一元管理する機能を提供します。また、さまざまなサービスやツールをプラグインとして統合できるため、自分たちが構築しているプラットフォームに合わせて独自の開発者ポータルを構築することが可能です。Backstageについては、次回の記事で紹介します。

まとめ

 今回の連載では、PTが提供するプラットフォームの重要性とその構成要素について解説しました。プラットフォーム提供を成功させるためには、アプリケーションの構成管理、インフラストラクチャのオーケストレーション、環境の管理、デプロイメントの管理、ロール単位のアクセス制御の5つのコアコンポーネントを適切に提供する必要があります。また、「Platform as a Product」の考え方を基に、開発者のニーズに寄り添い、ユーザー体験に重点を置いたプラットフォームの提供が重要です。また、開発者ポータルの役割とそのユーザー体験への貢献についても触れました。

 次回は、開発者ポータルの代表ツールであるBackstageについて詳しく見ていきます。お楽しみに!

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

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

もっと読む

この記事の著者

石川 諒(ishikawa-pro)(イシカワ アキラ)

 株式会社CAMのバックエンドエンジニア。 社内の多数のサービスを支えるプラットフォームの開発・運用に従事。仕事以外では、 Platform Engineering Meetup の運営にも携わり、Platform Engineering のコミュニティにも貢献している。

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

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

この記事をシェア

CodeZine(コードジン)
https://codezine.jp/article/detail/19376 2024/04/24 11:00

イベント

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

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

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

メールバックナンバー