「Platform Engineering Meetup #9」に参加してきました

プラットフォーム開発の実例と撤退から学ぶ

プラットフォーム改善の背景

  • stagingに反映後にデグレが見つかることが多い
    • プルリクでe2eまわす?
  • e2eがあまり増えていない
    • テスト動かすの面倒
  • プルリクベースで独立した環境でe2e動かす
    • 環境作った
    • SETのメンバーが作ったのでエンジニアからあまり使われなかった
  • 振り返って
    • ナレッジが貯まるのに時間がかかった
    • オーナーシップの所在が明確でなかった
      • やりたい人ベースの兼業
  • アンチパターンになぜはまるか
    • 失敗しようと思ってやっていたわけではない
  • どうすればよかったか
    • 新規サービスを作るような体制
    • 専任でアサインしてオーナーシップを明確に
    • ユーザのニーズを調査する
      • 「あったら嬉しい」は「なくてもいい」
      • 何が何でも解決したい課題なのか?
    • MVPから作っていく
      • 仮説検証できる小さなものから
      • 場合によっては一部手動運用でも
      • 作らないという選択肢
      • プラットフォームじゃなくてもいいのでは

「攻めて守る」プラットフォームづくり-大企業のルールや決まりに立ち向かうための(高度|コード)化-

チームトポロジーに見るKubernetes × Platform Engineeringの目指す姿

Team TopologiesとPlatformEngineering

  • 組織論と技術論
    • それぞれかけ合わせて効率と生産性を最大化
  • エンプラ系はプラットフォーム主導でクラウドネイティブの推進をしていくことになる
  • k8sは難しい
    • 小さく始めるのがいい
  • 単一のコラボレーションチームで
    • チームを分けずに1チームで
    • クラウドでなにかあったらすぐ消せる環境で
    • CIツールは導入してスピードあげる
    • この段階でツールに拘る必要はない
    • 非機能要件はおさえる
  • プラットフォームのサービス化
    • プラットフォームに所属しながら開発チームで
  • 組織文化レベルの体制
    • プラットフォームチームがテンプレートとノウハウを提供
    • 開発チームに運用担当者をおく