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

技術の洪水に立ち向かう: 開発者の心を軽くするプラットフォームエンジニアリングの話

技術の洪水に立ち向かう: 開発者の心を軽くするプラットフォームエンジニアリングの話

Findy主催のイベント「なぜ話題?Platform Engineering最前線 〜いま注目を浴びている理由とは〜」
https://findy.connpass.com/event/298961/
でお話しした資料です

Kazuto Kusama

October 31, 2023
Tweet

More Decks by Kazuto Kusama

Other Decks in Technology

Transcript

  1. Kazuto Kusama @jacopen Senior Solutions Engineer @HashiCorp Japan Organizer @Platform

    Engineering Meetup Founder @Cloud Native Innovators Association Tech Strategy Advisor @PITTAN
  2. About me • HashiCorpという会社で、TerraformやVaultと いったクラウドの自動化やセキュリティに関わる プロダクトのソリューションエンジニア • 通信事業者でPaaSの開発⇒ Pivotal /

    VMwareでPaaSプロダクトのプロフェッ ショナルサービス⇒ 現職 • CloudNative Daysをはじめとした、クラウドネイ ティブ技術に関するコミュニティ運営や情報発信 なので、基本的にはプラットフォーム側の人間です
  3. • デプロイするためのDockerfile書き、imageづくり • Manifest書き • CI/CDパイプライン作成 • 認証基盤との連携 ◦ OIDCのフローとか何回勉強しても忘れちゃうんだけど・・・

    • ロギング、モニタリングの設定 • セキュリティスキャン • etc… アプリをデプロイしたいだけなのにやるべきことが多い! みなさんも、くっそめんどくさい 経験ありませんか?
  4. 4つのチームタイプ Stream-aligned team ビジネスのストリームに沿って配置するチー ム。ビジネスの中心 Complicated Subsystem team 複雑なサブシステムやコンポーネントを扱う チーム。その分野のスペシャリストが集まる

    Enabling team 他のチームが新しい技術やスキルを身につける 支援をするチーム ★Platform team インフラやツール、共通サービスなどのプラッ トフォームを提供するチーム
  5. その道のプロ(= Platform Team)との関わり方 開発チーム その道のプロ 開発チーム その道のプロ Collaboration Facilitating その道のプロが開発チームに勉強会を

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

    Manifest書くのを担う 開発チーム その道のプロ XaaS その道のプロが用意したプラットフォームの レールの上で開発 最終的にはここを目指す この過程も大事
  7. Platform EngineeringとTeam Topologies • 価値のあるソフトウェアを素早く届けられるチームの在り方について 視点を提供してくれるのがTeam Topologies • Team Topologiesに沿って、開発者のくっそめんどくさいポイントを良くし

    てくれるのがPlatform Team • あらゆる技術に精通することは難しい&ガバナンスを効かせていく必要もあ るので、Platform Teamは技術の『標準』を定めていく。 • 最終的にはスケールするX-as-a-Serviceのインタラクションを目指すが、そ の過程でファシリテーションやコラボレーションを行うこともある
  8. Platform Teamが担うこと • 開発者の認知負荷軽減を一番の目的として取り組む • 開発の助けになるような情報を整理する • あらゆる技術に精通することは難しく、ガバナンスを効かせていく必要もあ るので、Platform Teamは技術の『標準』を定めていく

    • スムーズに取り組めるようオンボーディングの仕組みをととのえる • 必要に応じて勉強会やワークショップの開催を行う • 開発者からの質問や問い合わせに対して対応する • 開発者がセルフサービスで利用できる、自動化されたプラットフォーム を作っていく
  9. Platform Teamが担うこと • 開発者の認知負荷軽減を一番の目的として取り組む • 開発の助けになるような情報を整理する • あらゆる技術に精通することは難しく、ガバナンスを効かせていく必要もあ るので、Platform Teamは技術の『標準』を定めていく

    • スムーズに取り組めるようオンボーディングの仕組みをととのえる • 必要に応じて勉強会やワークショップの開催を行う • 開発者からの質問や問い合わせに対して対応する • 開発者がセルフサービスで利用できる、自動化されたプラットフォーム を作っていく 世間のPlatform Engineering評はこればっかり出てくる
  10. Platform Teamが担うこと • 開発者の認知負荷軽減を一番の目的として取り組む • 開発の助けになるような情報を整理する • あらゆる技術に精通することは難しく、ガバナンスを効かせていく必要もあ るので、Platform Teamは技術の『標準』を定めていく

    • スムーズに取り組めるようオンボーディングの仕組みをととのえる • 必要に応じて勉強会やワークショップの開催を行う • 開発者からの質問や問い合わせに対して対応する • 開発者がセルフサービスで利用できる、自動化されたプラットフォーム を作っていく 真に重要なのはこっち
  11. どうやって 時代はマイクロサービスでしょ VMは古い。今はコンテナ 全社統一のセキュリティ コ ンプライアンス基準を リソースの利用率を向上さ せてコスト削減 コンテナ Kubernetes

    サービス メッシュ 分散トレー シング オブザーバ ビリティ Developer 別にコンテナにしなくても困っ てないし、マイクロサービスに するフェーズじゃないし・・・ セキュリティも、どうせあとで チェックシート記入求められる んでしょ
  12. Platform as a Product • 開発者を『顧客』として考え、顧客にプラット フォームという『プロダクト』を提供していく というアプローチ • 世の中に提供されているさまざまなプロダクト

    と同じ管理手法を、プラットフォームにも取り 込んでいく 顧客 Platform Product プロダクトを提供 プロダクトを提供 プラットフォームチーム
  13. Platform as a Product 顧客 Platform Product プロダクトを提供 プロダクトを提供 プラットフォームチーム

    どういう価値を提供できれば 使って貰えるか 顧客が何に困っているか どうやってサポートしていく か どうやって教育していくか どうやって安定したチームを 作るか プラットフォームによる効果 がどのくらい出ているか 何をいつまでに提供するか 世の中のトレンドはどうなっ ているか
  14. Platform as a Product 顧客 Platform Product プロダクトを提供 プロダクトを提供 プロダクト

    マネージャー プロダクトマネジメントの 手法がそのまま使える。 チームに専任のプロダクトマ ネージャーを置き、プロダク トとしてのプラットフォーム の方向性を決めていく
  15. Platform as a Product 顧客 Platform Product プロダクトを提供 プロダクトを提供 プロダクト

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