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

開発者と協働できるメトリクスダッシュボードを作ろう!/SRE Lounge 2023

開発者と協働できるメトリクスダッシュボードを作ろう!/SRE Lounge 2023

SRE Lounge #14
登壇資料(2023/1/30)
『開発者と協働できるメトリクスダッシュボードを作ろう!』
https://sre-lounge.connpass.com/event/270369/

=============================================
【株式会社リンクアンドモチベーション】
■お問い合わせ
 [email protected]
■Entrancebook
 https://note.com/lmi/n/n179505e048f4
■登壇者 川津インタビュー
 https://www.wantedly.com/companies/lmi/post_articles/431391
=============================================

More Decks by リンクアンドモチベーション

Other Decks in Technology

Transcript

  1. © Link and Motivation
    Group
    開発者と協働できる
    メトリクスダッシュボードを作ろう!
    SRE ユニット 川津雄介 & 岸本直樹
    株式会社リンクアンドモチベーション

    View Slide

  2. © Link and Motivation
    Group 2
    自己紹介 & 会社説明

    View Slide

  3. 3
    © Link and Motivation
    Group
    自己紹介
    川津 雄介
    株式会社リンクアンドモチベーション SRE
    ● 前職は某複写機メーカーでエンジニアしてた
    ● OSレイヤーからWeb/モバイルまで何でもやる
    ● 中途の採用活動もします
    ● リンクアンドモチベーションではSREとして開発
    室全体の生産性向上に注力!
    https://github.com/megmogmog1965
    https://qiita.com/megmogmog1965

    View Slide

  4. 4
    © Link and Motivation
    Group
    自己紹介
    岸本 直樹
    株式会社リンクアンドモチベーション SRE
    ● モチベーションクラウドの開発でバックエンドエ
    ンジニアとして1年間経験
    ● その後、SRE チームの立ち上げメンバーとして開
    発組織の生産性向上と保守運用に従事
    ● 最近では Four Keys の開発メトリクスの向上プ
    ロジェクトに参加しております

    View Slide

  5. 5
    © Link and Motivation
    Group
    リンクアンドモチベーショングループについて
    個人から選ばれる組織
    (モチベーションカンパニー)
    創りを支援
    組織開発Division
    コンサル・クラウド事業
    IR支援事業
    個人開発Division
    組織から選ばれる個人
    (アイカンパニー)
    創りを支援
    キャリアスクール事業
    学習塾事業
    マッチングDivision
    組織と個人をつなぐ機会を提供
    人材紹介事業
    ALT配置事業
    創業 | 2000年4月7日
    上場市場 | 東京証券取引所 プライム市場(証券コード:2170)
    売上高 | 326億円(2021年12月時点)
    社員数 | 約1,500名(2021年12月時点)
    グループ会社 | 全12社
    ミッション | モチベーションエンジニアリングによって
    組織と個人に変革の機会を提供し、
    意味のあふれる社会を実現する

    View Slide

  6. 6
    © Link and Motivation
    Group
    プロダクト紹介
    働きがい あふれる社会へ

    View Slide

  7. 7
    © Link and Motivation
    Group
    モチベーションクラウド
    診断
    変革
    ※ 2021年度 実績
    8,740 社
    237 万人

    View Slide

  8. 8
    © Link and Motivation
    Group
    導入企業様
    ※2023年1月時点実績(https://www.motivation-cloud.com/)

    View Slide

  9. 9
    © Link and Motivation
    Group
    今日は主にメトリクス・ダッシュボード周りの話をします!

    View Slide

  10. © Link and Motivation
    Group 10
    リンクアンドモチベーションの
    SRE と開発組織

    View Slide

  11. 11
    © Link and Motivation
    Group
    弊社開発組織の歴史
    2016
    2018
    2019 2022
    2022
    モチベーションクラウド
    のリリース
    開発組織内製化のスタート
    (Four Keys = Low レベル)
    コミュニケーションクラウド
    のリリース
    ストレッチクラウド
    のリリース
    Four Keys メトリクス
    High レベルに到達
    2020
    SRE チームの誕生
    弊社の開発組織は誕生して5年目です!

    View Slide

  12. 12
    © Link and Motivation
    Group
    SRE チームの遷移 (Team Topologies 風に言うと...)
    4つのチームタイプ
    ※ 出典:「チームトポロジー 価値あるソフトウェアをすばやく届ける適応型組織設計」より

    View Slide

  13. 13
    © Link and Motivation
    Group
    SRE チームの遷移 (Team Topologies 風に言うと...)
    インタラクションモード (チーム間の関わり方を示す)
    ※ 出典:「チームトポロジー 価値あるソフトウェアをすばやく届ける適応型組織設計」より

    View Slide

  14. 14
    © Link and Motivation
    Group
    1年前 → Medium レベル
    インフラや CI/CD (仕組み) を一方的に提供していた。

    View Slide

  15. 15
    © Link and Motivation
    Group
    現在 → High レベル
    開発者と協働し、課題解決に取り組む。

    View Slide

  16. © Link and Motivation
    Group 16
    開発者と SRE の協働

    View Slide

  17. 17
    © Link and Motivation
    Group
    SRE で課題解決し一方的に押し付けてきた
    デプロイの自動化 コンテナ化 IaC (Terraform)
    Four Keys : Low 〜 Medium 時代

    View Slide

  18. 18
    © Link and Motivation
    Group
    遠い (苦手)
    近い (得意)
    インフラの仕組みだけで解決できる限界
    SRE アプリ開発者
    インフラ
    CI / CD
    ブランチング
    モデル
    テストコード
    E2E テスト
    アプリコード
    メトリクス
    SRE (インフラエンジニア発) は、どうしてもインフラ側から改善しがち。

    View Slide

  19. 19
    © Link and Motivation
    Group

    開発者間の「協働」

    View Slide

  20. 20
    © Link and Motivation
    Group
    SRE と開発者が協働して進めるには?
    1
    2
    3
    開発生産性・メトリクスの基準を統一する
    改善活動をみんなの目標にする
    数値を上げる意味・目的を共有する

    View Slide

  21. 21
    © Link and Motivation
    Group
    SRE と開発者が協働して進めるには?
    1
    2
    3
    開発生産性・メトリクスの基準を統一する
    改善活動をみんなの目標にする
    数値を上げる意味・目的を共有する
    今日のトピックはここ

    View Slide

  22. 22
    © Link and Motivation
    Group
    SRE と開発者が協働して進めるには?
    1
    2
    3
    開発生産性・メトリクスの基準を統一する
    改善活動をみんなの目標にする
    数値を上げる意味・目的を共有する
    デブサミで話します

    View Slide

  23. © Link and Motivation
    Group 23
    開発生産性・メトリクスの基準を統一する

    View Slide

  24. 24
    © Link and Motivation
    Group
    生産性の議論を始める為に
    SRE
    開発者
    共通の指標
    コミュニケーション
    議論をする為の共通のネタ「指標」が必要。

    View Slide

  25. 25
    © Link and Motivation
    Group
    SRE が手動でメトリクス集計をしてました
    長らく、SRE が手動でメトリクス集計&可視化をしていました。
    SRE
    週に1度だけ
    更新する!
    あ、先週更新するの
    忘れてた...

    View Slide

  26. 26
    © Link and Motivation
    Group
    SRE が手動でメトリクス集計をしてました
    長らく、SRE が手動でメトリクス集計&可視化をしていました。
    SRE
    週に1度だけ
    更新する!
    あ、先週更新するの
    忘れてた...
    改善に繋がらない!

    View Slide

  27. 27
    © Link and Motivation
    Group
    生産性課題を特定する為に必要な情報
    量・頻度・正確さ の掛け算。
    量 頻度
    正確さ
    課題の分析をする為に、様々
    な面の情報が取得できている

    最新の情報が毎日更新・記録
    できている事
    情報が正確で信頼できる事

    View Slide

  28. 28
    © Link and Motivation
    Group
    ① 情報の量
    今月の PR は 100 件でした
    25 th% は「0〜3日」
    XXX さんの PR は7日超えが多い
    今月のリードタイムは「7日」
    もっと細かく・視点を変えて見ると...

    View Slide

  29. 29
    © Link and Motivation
    Group
    ② 情報の更新頻度
    振り返りの期間は多種多様。 (相対・絶対 / 日・週・月)
    11月
    第2週
    12月
    第3週 第4週
    今日
    過去2週間
    (相対)
    1週目 2週目
    月で振り返りたい

    View Slide

  30. 30
    © Link and Motivation
    Group
    ② 情報の更新頻度
    振り返りの期間は多種多様。 (相対・絶対 / 日・週・月)
    11月
    第2週
    12月
    第3週 第4週
    今日
    過去2週間
    (相対)
    1週目 2週目
    月で振り返りたい
    毎日メトリクス集計できているとベスト

    View Slide

  31. 31
    © Link and Motivation
    Group
    ③ 情報の正確さ
    情報
    (ミス 0%)
    機械
    人間
    情報
    (ミス 20%)
    開発者
    (頻度低くても)
    ミスの可能性があると
    見る気を無くす
    自動
    手作業

    View Slide

  32. 32
    © Link and Motivation
    Group
    自動化が必要

    View Slide

  33. 33
    © Link and Motivation
    Group
    メトリクス・ダッシュボード自動化に求められる要件
    全自動 リアルタイム性 変更容易性
    ダッシュボード要件
    見たい時に見たい情報が得ら
    れないと、開発者は見る気を
    無くす
    メトリクスを計測する事自体
    が SRE の負担 (トイル) にな
    ってはならない
    メトリクスの具体的な計測方
    法は、利用しているツールだ
    けでなく、開発組織の状況に
    よって常に変わる

    View Slide

  34. 34
    © Link and Motivation
    Group
    変更に強いメトリクス集計
    ツールだけでなく、開発組織や事業のフェーズによって、集計方法は都度変わる。
    ブランチングモデル
    が変わったり...
    インシデント対応
    プロセスが変わる等

    View Slide

  35. © Link and Motivation
    Group 35
    メトリクスダッシュボードの作成方法

    View Slide

  36. 36
    © Link and Motivation
    Group
    最近はメトリクス集計をする外部サービスもあるよね
    SRE 始めたての若い組織は、実績が足りないので
    外部サービス (※お金掛かる) をうまく活用できるか、判断がつかない。
    初めはタダで出来る範囲で
    経験値を積んでからかなぁ...

    View Slide

  37. 37
    © Link and Motivation
    Group
    使用するサービス

    View Slide

  38. 38
    © Link and Motivation
    Group
    全体アーキテクチャ

    View Slide

  39. 39
    © Link and Motivation
    Group
    全体アーキテクチャ
    直感的に
    作成可能
    変更が簡単
    無料の範囲
    で使用可能
    自動で
    集計可能

    View Slide

  40. 40
    © Link and Motivation
    Group
    全体アーキテクチャ

    View Slide

  41. 41
    © Link and Motivation
    Group
    サンプルで作成するダッシュボード
    dailyのリードタイム中央値
    (統計値)
    マージされた日付
    (期間)
    リードタイム = マージされた日付 - ファーストコミットされた日付

    View Slide

  42. 42
    © Link and Motivation
    Group
    全体アーキテクチャ

    View Slide

  43. 43
    © Link and Motivation
    Group
    データの収集について
    変数値 詳細
    title PRのタイトル
    author PRの作成者
    url PRのURL
    Base PRの向け先ブランチ名
    created_at PR作成された日付
    merged_at PRマージされた日付
    first_commited_at ファーストコミットの日付
    Github Actionsでリードタイム計測に必要なPR情報を抽出
    上記の情報をPRマージ時に自動でスプレッドシートに書き込むよう設定

    View Slide

  44. 44
    © Link and Motivation
    Group
    データの収集について
    Githubから抽出した情報を受け取るテーブルを用意

    View Slide

  45. 45
    © Link and Motivation
    Group
    データの収集について
    Githubから抽出した情報を受け取るテーブルを用意
    Githubから自動で情報が送信されてくる

    View Slide

  46. 46
    © Link and Motivation
    Group
    全体アーキテクチャ

    View Slide

  47. 47
    © Link and Motivation
    Group
    データの整形について
    収集したSpread SheetとLooker Studioを接続する

    View Slide

  48. 48
    © Link and Motivation
    Group
    データの整形について
    ディメンション スプレッドシートのカラム
    指標 スプレッドシートから自動で計算される統計データ
    (SUM,AVE,MED,etc)
    収集したSpread SheetとLooker Studioを接続する
    1行
    (1レコード)
    グラフの縦軸

    View Slide

  49. 49
    © Link and Motivation
    Group
    データの整形について
    ディメンション スプレッドシートのカラム
    指標 スプレッドシートから自動で計算される統計データ
    (SUM,AVE,MED,etc)
    収集したSpread SheetとLooker Studioを接続する
    閲覧したい情報のデータの整形ができる!!

    View Slide

  50. 50
    © Link and Motivation
    Group
    データの整形について
    収集したデータからLooker関数を使ってリードタイムのカラムを作成する
    レコード タイプ 内容
    リードタイム(日) ディメンション
    スプレッドシートのカラムの
    merged_atとfirst_commited_atの差分
    リードタイム中央値(日) 指標 上記レコードの中央値

    View Slide

  51. 51
    © Link and Motivation
    Group
    データの閲覧について
    Looker Studioで設定したデータを使ってグラフを作成

    View Slide

  52. 52
    © Link and Motivation
    Group
    実際に作成したダッシュボード

    View Slide

  53. 53
    © Link and Motivation
    Group
    アウトカム
    信頼性の高いダッシュボードができたことで、開発者が生産性向上するための指標となった。
    Before After
    現状もわからないし、
    SREからの依頼で
    週1、月1しか改善がされない
    現状がわかり、
    自分たちで
    日々PDCAを回して改善ができる
    開発者 開発者

    View Slide

  54. © Link and Motivation
    Group 54
    まとめ

    View Slide

  55. 55
    © Link and Motivation
    Group
    まとめ
    ➢ 開発者と生産性向上の活動を協働して、メトリクス目標の達成を成し遂げる為に、
    ダッシュボード化 (メトリクスを最新に保ち信頼できる状態に)する 事が大事
    ➢ ダッシュボード化、思ってるより簡単にできますよ!

    View Slide

  56. THANKS
    私達、株式会社 Link & Motivation は
    一緒に働く新しい仲間を募集しています!
    応募ページはこちら!

    View Slide