Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Platform Engineeringで クラウドの「楽しくない」を解消しよう

Platform Engineeringで クラウドの「楽しくない」を解消しよう

JAWS DAYS 2025で登壇した資料です

あなたにとってのPlatformのTVPとはWikiかもしれない、の情報元
https://teamtopologies.com/key-concepts-content/what-is-a-thinnest-viable-platform-tvp

Platform Engineering KaigiのManuel Paisさんセッションアーカイブ
https://www.cnia.io/pek2024/sessions/b425872b-4a02-49ab-858a-3fffeebe866d/

deeeetさんセッションアーカイブ
https://www.cnia.io/pek2024/sessions/768e0788-00cc-4055-88d2-27e32730b035/

Kazuto Kusama

March 06, 2025
Tweet

More Decks by Kazuto Kusama

Other Decks in Technology

Transcript

  1. Kazuto Kusama @jacopen Product Evangelist @PagerDuty Japan Organizer @Platform Engineering

    Meetup Founder @Cloud Native Innovators Association Organizer @CloudNative Days
  2. About me • PagerDutyという、インシデントを管理する SaaSのプロダクトエバンジェリスト • 前職はHashiCorpでTerraformやVaultの プリセールスエンジニア • その前はPivotal/VMwareでPaaSプロダクトの

    プロフェッショナルサービス • さらにその前は通信事業者でクラウドサービスを 作るエンジニア なので、基本的にはプラットフォーム側の人間です
  3. • クラウドやコンテナの知識は持ち合わせている • でも、アプリを書いているときは、頭の中は開発モード • 開発モードからクラウドエンジニアモードに頭を切り替えるのは くっそめんどくさい • クラウドエンジニアモードから開発モードに戻すのも くっそめんどくさい

    アプリを作っているときは 元HashiCorpですし、Terraformの本も出したりしてるんです が、そんな自分からしても開発してる途中に HCLなんて書き たくないです。 じゃあCDKでTypeScriptだと解決?いや、そういう話ではな いです。それも頭切り替え必要なの変わんないです
  4. 僕が思う、AWSが楽しくないとき • 学習の負荷が高すぎるとき ◦ 適度な学習の負荷なら、好奇心が勝って『楽しい』 ◦ 自分のキャパ超えてくると『楽しくない』 ▪ 単純に必要スキルが自分のレベルを超えている ▪

    情報が散在している結果、『検索する』という本質的ではない作 業に追われる ▪ 気に障るブロッカー • コンテキストスイッチが多すぎるとき ◦ TypeScript⇨HCL⇨TypeScript⇨YAMLみたいな反復横跳びしんどい • 今、注力したいのは『そっちじゃない』とき ◦ アプリの開発に注力したいのに・・・! ◦ UX考えるのに時間を使いたいのに!
  5. • デプロイするためのDockerfile書き、imageづくり • Manifest書き • CI/CDパイプライン作成 • 認証基盤との連携 ◦ OIDCのフローとか何回勉強しても忘れちゃうんだけど・・・

    • ロギング、モニタリングの設定 • セキュリティスキャン • IaCのコード書き • etc… アプリをデプロイしたいだけなのにやるべきことが多い! みなさんも、くっそめんどくさい 経験ありませんか?
  6. 人類の発明『分業』 • 世界で初めて分業について解説したのは、 18世紀の経済学者 アダム・スミス • ピン工場の例を用いて分業の効率性を説いた ◦ 1人の職人が分業無しでピンを作ろうとすると、1日 に20本程度

    ◦ 工場では、18の工程に分けられ、10人の作業者が分 担 ▪ 針金を引き延ばす ▪ 針金を真っ直ぐにする ▪ 切断する ▪ 先端を尖らせる ▪ (以下略) ◦ こうすることで、1日に48,000本生産できる ▪ 生産性240倍向上!
  7. あれでしょ、DevOpsってやつでしょ Build Test Ship Run 開発 運用 信頼性を第1 にしたい 生産性を第1

    にしたい それぞれ大事にしたいポイントが違うん で、上手くいかないこともあるんですね。信 頼性上げるための改善を開発にしてほし いけど、優先順位が上がらない・・・とか。
  8. You build it, you run it. Werner Vogels, VP &

    CTO of Amazon 我らがAmazonのVP&CTO が、かつてこういうことを言い ました
  9. “コードに責任を持つ” メリット • フィードバックループの高速化 ◦ 開発者が日常的に運用に関与すると、ユーザーからの生のフィード バックや本番環境での問題点が直接開発チームに届く ◦ 「不具合→修正」のサイクルが短くなり、サービスの継続的な改善 がスピーディーに行える

    • 運用負荷の軽減とチーム連携の強化 ◦ 従来運用担当に集中しがちだった負荷が分散される 。特定の運用 チームだけに深夜対応などの負担がかかる状況を和らげ、組織全体 で信頼性向上に取り組む姿勢が生まれる
  10. 4つのチームタイプ Stream-aligned team ビジネスのストリームに沿って配置するチーム。ビ ジネスの中心 Complicated Subsystem team 複雑なサブシステムやコンポーネントを扱うチー ム。その分野のスペシャリストが集まる

    Enabling team 他のチームが新しい技術やスキルを身につける支援 をするチーム ★Platform team インフラやツール、共通サービスなどのプラット フォームを提供するチーム
  11. Team Topologiesでは、DevとOpsに分けない Stream-aligned team 開発から運用まで、ビジネス価値に関するところ を一気通貫で担う You build it, you

    run itの原則を体現する ここで重要なのは、Stream-aligned Teamは DevとOpsみたいに分けてないこと。Stream に関して1チームが責任を負うスタイル。
  12. Platform Engineeringでよく出る2つのIDP 開発チームがインフラやツールを効率的 に利用できるようにするための内部向け プラットフォーム インフラ、CI/CD、監視、認証などを抽 象化し、開発チームがアプリ開発に集中 できるようにする。 インフラやサービスの自己管理を支援 し、「セルフサービス」で素早く安全に

    操作できるように設計する。 Internal Developer Platform Internal Developer Portal 開発者向けのインターフェース。 Internal Developer Portalに含まれる ことも多い 自社のサービスやインフラ、ツールの 情報を一元化し、開発者が必要なリ ソースや情報に簡単にアクセスできる ようにしたもの。 ドキュメントやAPI仕様、サービスの 稼働状況をカタログ形式で表示した り、検索可能にしたりする。 Platform Engineeringについて調べると、こういう2 つのIDPに関する情報が出てきます
  13. Platform Engineeringでよく出る2つのIDP 開発チームがインフラやツールを効率的 に利用できるようにするための内部向け プラットフォーム インフラ、CI/CD、監視、認証などを抽 象化し、開発チームがアプリ開発に集中 できるようにする。 インフラやサービスの自己管理を支援 し、「セルフサービス」で素早く安全に

    操作できるように設計する。 Internal Developer Platform Internal Developer Portal 開発者向けのインターフェース。 Internal Developer Portalに含まれる ことも多い 自社のサービスやインフラ、ツールの 情報を一元化し、開発者が必要なリ ソースや情報に簡単にアクセスできる ようにしたもの。 ドキュメントやAPI仕様、サービスの 稼働状況をカタログ形式で表示した り、検索可能にしたりする。 気にしなくていい でも、こんなの気にしなくて良いです。
  14. Team Topologiesから考える、チームの関わり方 開発チーム その道のプロ 開発チーム その道のプロ Collaboration Facilitating その道のプロが開発チームに勉強会を 開いたり、Slackで情報提供

    その道のプロが開発チームにジョインし Manifest書くのを担う 開発チーム その道のプロ XaaS その道のプロが用意したプラットフォームの レールの上で開発
  15. Team Topologiesから考える、チームの関わり方 開発チーム その道のプロ 開発チーム その道のプロ Collaboration Facilitating その道のプロが開発チームに勉強会を 開いたり、Slackで情報提供

    その道のプロが開発チームにジョインし Manifest書くのを担う 開発チーム その道のプロ XaaS その道のプロが用意したプラットフォームの レールの上で開発
  16. 最も小さいプラットフォームは、ただのWikiかも At the same time, we're not aiming to build

    a massive platform. We're aiming to build what we in the book call a thinnest viable platform TVP. This TVP could be just a wiki page if that's all you need for your platform. 私たちは巨大なプラットフォームの構築を目指 しているわけではありません。私たちは、書籍 で「最も薄い実行可能なプラットフォーム (TVP)」と呼んでいるものを構築することを 目指しています。 このTVPは、プラットフォームに必要なものが ウィキページだけなら、ウィキページだけで構 成することも可能です。 https://teamtopologies.com/key-concepts-con tent/what-is-a-thinnest-viable-platform-tvp
  17. Team Topologiesから考える、チームの関わり方 開発チーム その道のプロ 開発チーム その道のプロ Collaboration Facilitating その道のプロが開発チームに勉強会を 開いたり、Slackで情報提供

    その道のプロが開発チームにジョインし Manifest書くのを担う 開発チーム その道のプロ XaaS その道のプロが用意したプラットフォームの レールの上で開発
  18. Team Topologiesから考える、チームの関わり方 開発チーム その道のプロ 開発チーム その道のプロ Collaboration Facilitating その道のプロが開発チームに勉強会を 開いたり、Slackで情報提供

    その道のプロが開発チームにジョインし Manifest書くのを担う 開発チーム その道のプロ XaaS その道のプロが用意したプラットフォームの レールの上で開発
  19. そのうえで、プラットフォーム(XaaS)を作る • セキュアバイデフォルトなプラットフォーム • ワンクリックで環境調達ができるポータル • 各種ミドルウェアのオンデマンド払い出し • 統一された認証認可 •

    メトリクス収集・監視の標準セットアップ • などなど 開発チーム その道のプロ XaaS 大事なことは、機能を揃えるのではなく、必要とされるものを提供すること
  20. Platform as a Product 顧客 Platform Product プロダクトを提供 プロダクトを提供 プロダクト

    マネージャー • プラットフォームが最も達成したい指標は何か ◦ North Star Metricsの策定 • 顧客は何にペインを感じているのか ◦ ユーザーヒアリング • 最も重要なものから実現し、TVP(Thinnest Viable Platform)を作る ◦ 実装する機能の優先順位付け • 社内にその存在を知ってもらう ◦ ブランディング、社内マーケティング