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

DevOpsDaysTokyo2024_週5時間から始めた活動が組織の壁を越え__商用サーヒ...

 DevOpsDaysTokyo2024_週5時間から始めた活動が組織の壁を越え__商用サービスの運用者を救った話.pdf

susumutomita

April 16, 2024
Tweet

More Decks by susumutomita

Other Decks in Programming

Transcript

  1. © DENSO CORPORATION All Rights Reserved. Susumu Tomita Naomichi Shimazu

    週5時間から始めた活動が組織の壁を越え 商用サービスの運用者を救った話 2024/4/16
  2. © DENSO CORPORATION All Rights Reserved. 2 冨田 進 Susumu

    Tomita デンソークラウドサービス開発部 CCoE(Cloud Center of Excellence) 課 Software Engineer 2018年にデンソーへ入社 現在はWebサービスのソフトウェア開発と CCoE を担当 島津 直道 Naomichi Shimazu デンソークラウドサービス開発部 CCoE 課 寿司を握って食べるエンジニア 2017年にデンソーに入社 現在は Web サービスのアーキテクチャ設計及び構築と非機能要件定義を担当 自己紹介
  3. © DENSO CORPORATION All Rights Reserved. 4 • 社内に Terrakoya

    や AWS に関して積極的に情報発信を実施した • インターンシップを開催し、気軽に Terrakoya の活動に触れてもらう機会を作った • モチベーションがあり、クラウドの活用に課題意識を持ったメンバーが部署の垣根を越えて集まったチームになった どのようにチームが生まれたのか
  4. © DENSO CORPORATION All Rights Reserved. 5 • Terraform 基礎トレーニング

    • 社内向け AWS セキュリティガイドライン • 運用筋トレーニング 👈今日はこの話をします • IT サービス運用における運用管理のスキルや知識を鍛えるトレーニング。Terrakoyaメンバーがトレーナーとなり、 実際の現場の課題を一緒に解決していく。例 : AWSのコスト最適化、リリースプロセスの最適化 Terrakoyaがこれまでリリースしたプロダクト
  5. © DENSO CORPORATION All Rights Reserved. 6 24 年 9

    月に基盤刷新を予定しているが人手が足りない。 リリースにかかる工数を減らせれば基盤刷新に工数を充てられるのではないかと考えていた。 ある日の相談 新しい基盤でも使える自動化技術と運用を学びたい! 自動化で生まれた時間を基盤刷新に充てたい! トレーニー 基盤刷新担当
  6. © DENSO CORPORATION All Rights Reserved. Title / Month XX,

    2023 (Please enter it from the "Insert" → "Header and Footer") 7 チームの立ち位置・登場人物 自治体向けサービスチーム Terrakoyaチーム パートナー 自治体 マネージャー 営業チーム トレーニングを 提供 トレーニー として参加 提案、 要望ヒアリング 作業依頼 基盤刷新担当
  7. © DENSO CORPORATION All Rights Reserved. 8 はじめに、実際にリリースチケットや作業ログをみて、具体的にどのようにリリースが行われているか分析した。 その結果、次のことがわかった。 •

    一カ月のマイルストンで開発、リリースが繰り返されていた • 自治体×機能ごとにリリースプロセスがあり、並行で行われていた • 開発、テストはバラバラに行われていたが、リリースとリリース後の確認を一度にまとめていた • 一度のリリースに 20 時間かかっている • リリース作業はパートナーへ委託しており、テスト環境、ステージング環境、本番環境へのリリース後に必ずデンソー側で確 認作業を行っていた 実物を見て、事実を押さえる
  8. © DENSO CORPORATION All Rights Reserved. 10 分析をした結果、次の問題があるのではないかと仮説を立てられた • 月1回のリリースを待たずに本番リリースできる機能があるのではないか

    • リリース後の確認作業に工数をかけすぎてはいないか • デンソーで実施できる作業までパートナーに依頼していないか 仮説を立てる
  9. © DENSO CORPORATION All Rights Reserved. 11 営業チームに仮説を共有して、事実なのかどうか確かめた • 月1回のリリースを待たずに本番リリースできる機能がある

    • 体感では、8割のリリースは Config(設定ファイル)変更だけで済むものに見えている • リリース後の確認作業に工数がかかっている • パートナーとデンソーで重複している確認作業がある • デンソーで実施できる作業までパートナーに依頼してしてる • パートナーに依頼することでコミュニケーションや確認作業に工数がかかるが、現状の仕組みのままではデンソー側 にタスクを戻すのが難しく、実現方法が見つかっていない • Config 変更をデンソーで行えると一番効果があるのではないか 会話した結果、 Config 変更のリリースをデンソーだけで行えれば、大きな改善効果がありそうだということがわかる 仮説を立てて、実際にやっている人にヒアリングして検証する
  10. © DENSO CORPORATION All Rights Reserved. 12 その結果、次のことがわかった。 • デンソーの営業チームから直接パートナーに依頼が行われていた

    • Config の項目を決めるまでに複数回のやり取りをパートナーと行っていた • Config はエクセルの入力値を元にマクロを利用して、PHP のコードに変換されていた • エクセルマクロのコードはバージョン管理されておらず、どの顧客でどのマクロを利用して Config を生成したのかデンソーに はわからなかった • PHP のコードに変換した後にさらに手作業でコードの修正が行われた。また、どこを変更するのかリリース手順書に書かれ ていなかった Config の変更をデンソーだけで行えるようになるには、営業担当者の動きも含めた、リリースフロー全体に着目して設計が 必要なことがわかった Config変更のリリースフローをさらに詳細に把握する
  11. © DENSO CORPORATION All Rights Reserved. 13 Config変更のリリースフローを確認する 自治体向けサービ スチーム

    パートナー 自治体 営業チーム こんなんどうです? こうしたい 要件これな 要件に不備あるで OK、リリースしよか リリースしたで 確認よろ リリース手順書 修正したで 作ったで 確認よろ 問題なしやで マクロ
  12. © DENSO CORPORATION All Rights Reserved. 14 • 巻き取れそうなリリースフローの全てに対して自動化を実施するのは現実的ではない •

    リリースを実施する人への導入負荷が大きい • 9月末の基盤刷新以降は使われなくなるのでできるだけ早く導入したい • まずは自動化する効果が大きい機能から着手することにした • 昨年度のリリース回数とリリース時間の実績を分析し、自動化する効果が大きい機能を特定した 過去のリリース実績からどの機能リリースを自動化するかを決めた リリース実績を並べて いつ、誰が、何に、 どれくらいの時間をかけたか を分析
  13. © DENSO CORPORATION All Rights Reserved. 15 • 技術的な課題が見つかる •

    試作環境を構築し、技術的にリリースパイプラインを回せるようになるまで試行錯誤した 分析結果をもとにリリースパイプラインを試作
  14. © DENSO CORPORATION All Rights Reserved. 16 技術的にできそうなのは分かったけれど、非エンジニアである営業がリリース作業を実施できるかどうかは、また別のお話特に Git を使って

    Config をレポジトリにプッシュするのが難しいと考えた 難しそうならさらに実施しやすい形に作り込む必要があると考えていた そのため、営業にパイプラインの設計ができた段階でフィードバックをもらう やれそうです。と回答をいただく 再度、営業にヒアリング
  15. © DENSO CORPORATION All Rights Reserved. 17 技術的にできそうなのは分かったけれど、非エンジニアである営業がリリース作業を実施できるかどうかは、また別のお話特に Git を使って

    Config をレポジトリにプッシュするのが難しいと考えた 難しそうならさらに実施しやすい形に作り込む必要があると考えていた そのため、営業にパイプラインの設計ができた段階でフィードバックをもらう やれそうです。と回答をいただく 再度、営業にヒアリング いきなり作り込みすぎない 実際に使う人の許容できる範囲を探る
  16. © DENSO CORPORATION All Rights Reserved. 19 導入までにやるべきことが分かったので、自動化したリリースフローを運用開始できそうかを見積もった。 リリースパイプラインを導入から、現行基盤が終了する2024年9月末まで運用した場合のコスト削減効果を見積もる。 非エンジニアでもわかるように時間とお金でコスト削減効果を表現した。

    営業とマネージャーに提案し、ぜひやりましょうと前向きな返事をいただけた。 想像していたよりも削減効果があり、営業もマネージャーもノリノリに リリース自動化の効果を見積もる 相手の立場に合わせて効果を表現する
  17. © DENSO CORPORATION All Rights Reserved. 20 お客様の声 成長・改善できたこと 自分達では見直しができていなかった作業や気づいていなかったリスクを第三者視点でコメントを頂き、トレーニングではチームの弱点を明

    らかにし、自分達で一部対応ができるようになりました 特に、トレーニングでは1回だけの改善に留まらず、確認すべき観点が理解できたため、継続的に自分達で対応できるようになりました Terrakoyaのトレーナーについて 専門性が高いトレーナーの皆さんはAWSベストプラクティスの知識を保有しているだけでなく、サービスのシステム構成・運営体制、現場の 課題の実態を理解した上で、自分たちに合ったトレーニングを提供して頂いたことで、納得感・安心感があったこと、成長している実感が あったため、私はトレーニングを前向きに取り組むことができました
  18. © DENSO CORPORATION All Rights Reserved. 21 ビジネスサイドを巻き込むための大事なこと • 実物を見よう、事実を押さえよう

    • 困りごとの仮説を立てて、実際にやっている人にヒアリングして検証しよう • いきなり作り込みすぎない、実際に使う人の許容できる範囲を探る • 相手の立場に合わせて表現する 持ち帰ってほしいこと