Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
負債あるモノリスのオブザーバビリティに組織で向き合う
Search
Recruit
PRO
September 24, 2024
Technology
10
520
負債あるモノリスのオブザーバビリティに組織で向き合う
2024/09/25に、オブザーバビリティ実践までの道のり〜各社の課題とアプローチ方法とは?~で発表した、moppの資料です。
Recruit
PRO
September 24, 2024
Tweet
Share
More Decks by Recruit
See All by Recruit
Javaで作る RAGを活用した Q&Aアプリケーション
recruitengineers
PRO
1
110
問題解決に役立つ数理工学
recruitengineers
PRO
11
2.8k
Curiosity & Persistence
recruitengineers
PRO
2
190
結果的にこうなった。から見える メカニズムのようなもの。
recruitengineers
PRO
1
410
成長実感と伸び悩みからふりかえる キャリアグラフ
recruitengineers
PRO
1
190
リクルートの オンプレ環境の未来を語る
recruitengineers
PRO
3
350
LLMのプロダクト装着と独自モデル開発
recruitengineers
PRO
1
360
新規検索基盤でマッチング精度向上に挑む! ~『ホットペッパーグルメ』の開発事例 ビジネス編
recruitengineers
PRO
3
200
新規検索基盤でマッチング精度向上に挑む! ~『ホットペッパーグルメ』の開発事例 技術編
recruitengineers
PRO
2
250
Other Decks in Technology
See All in Technology
Observability infrastructure behind the trillion-messages scale Kafka platform
lycorptech_jp
PRO
0
140
PHPでWebブラウザのレンダリングエンジンを実装する
dip_tech
PRO
0
200
Tech-Verse 2025 Keynote
lycorptech_jp
PRO
0
100
Oracle Cloud Infrastructure:2025年6月度サービス・アップデート
oracle4engineer
PRO
2
240
_第3回__AIxIoTビジネス共創ラボ紹介資料_20250617.pdf
iotcomjpadmin
0
150
標準技術と独自システムで作る「つらくない」SaaS アカウント管理 / Effortless SaaS Account Management with Standard Technologies & Custom Systems
yuyatakeyama
3
1.2k
なぜ私はいま、ここにいるのか? #もがく中堅デザイナー #プロダクトデザイナー
bengo4com
0
410
製造業からパッケージ製品まで、あらゆる領域をカバー!生成AIを利用したテストシナリオ生成 / 20250627 Suguru Ishii
shift_evolve
PRO
1
140
生成AIで小説を書くためにプロンプトの制約や原則について学ぶ / prompt-engineering-for-ai-fiction
nwiizo
4
1.6k
Amazon Bedrockで実現する 新たな学習体験
kzkmaeda
2
540
Agentic Workflowという選択肢を考える
tkikuchi1002
1
500
25分で解説する「最小権限の原則」を実現するための AWS「ポリシー」大全 / 20250625-aws-summit-aws-policy
opelab
9
1.1k
Featured
See All Featured
Docker and Python
trallard
44
3.4k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
34
5.9k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
10
930
KATA
mclloyd
29
14k
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
Product Roadmaps are Hard
iamctodd
PRO
54
11k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
Agile that works and the tools we love
rasmusluckow
329
21k
Fireside Chat
paigeccino
37
3.5k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
53
2.8k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
8
670
Imperfection Machines: The Place of Print at Facebook
scottboms
267
13k
Transcript
#o11y_findy 負債あるモノリスのオブザーバビリティに組織で向き合う@スタディサプリ 負債あるモノリスのオブザーバビリティに 組織で向き合う @mopp オブザーバビリティ実践までの道のり〜各社の課題とアプローチ方法とは?〜
#o11y_findy 負債あるモノリスのオブザーバビリティに組織で向き合う@スタディサプリ About mopp • 仕事 ◦ ソフトウェアエンジニア • エディタ
◦ Neovim ◦ VimConf 2024 の運営やってます • 最近のできごと ◦ セブンイレブンの豆腐ガトーショコラを 自宅で量産できた
#o11y_findy 負債あるモノリスのオブザーバビリティに組織で向き合う@スタディサプリ About スタディサプリ 小中高 様々なスタディサプリの内 「小学講座」「中学準備・中学 講座」「大学受験講座」の領域 でのお話しをします
#o11y_findy 負債あるモノリスのオブザーバビリティに組織で向き合う@スタディサプリ • もっとオブザーバビリティ/監視を推進したいけど どうしたらいいのか悩んでいる人 • モノリスのオブザーバビリティ/監視を改善したい人 対象者
#o11y_findy 負債あるモノリスのオブザーバビリティに組織で向き合う@スタディサプリ オブザーバビリティとは? オブザーバビリティとは?監視との違い、必要性について解説 | New Relic より 何が起きたかを 見続けること
監視 なぜそれが起きたかを 探り出すこと オブザーバビリティ 基礎に「監視」がある (自分でも理解が曖昧でした) より進んだ概念
#o11y_findy 負債あるモノリスのオブザーバビリティに組織で向き合う@スタディサプリ オブザーバビリティを実践するために 監視から強化していく
#o11y_findy 負債あるモノリスのオブザーバビリティに組織で向き合う@スタディサプリ 歴史と負債のあるモノリス Ruby サーバ アプリケーション 多くの機能が乗っている要所 エンドポイント数: 約240個 Web,
Android, iOS の全クライアントから利用 地層の最深層は2015年くらい チーム エンドユーザ 利用する チーム チーム チーム チーム チーム チーム チーム チーム チーム チーム チーム チーム チーム チーム 約15チーム 開発する
#o11y_findy 負債あるモノリスのオブザーバビリティに組織で向き合う@スタディサプリ 歴史と負債のあるモノリス 直面する問題(の一部) エラー増加したとき どのチームを呼べばいいか わからない 実装の詳細が知りたい でも、誰も知らない 何かが起きてそう
だが、どこが原因か調べにくい →オブザーバビリティが低い エンドポイントに Ownership を設定 一定解消 打ち手 今回はこの話をします 開発者 つらい、 とても… 近年の 社内有志たち による改善
#o11y_findy 負債あるモノリスのオブザーバビリティに組織で向き合う@スタディサプリ 今回の問題 現れた問題 ダッシュボードが見づらい 本来やりたかったこと Ownerチームの特定と接続のため どこで異常が起きているか知りたい 動作確認のため 問題がないか確認したい
開発者 グラフがたくさんあるけど どれを見れば…? 開発者 全体レイテンシが悪化して るけど原因はどのエンドポ イントだ… Ownership が混じる
#o11y_findy 負債あるモノリスのオブザーバビリティに組織で向き合う@スタディサプリ 問題の深堀り アプリケーションも一つ 監視には Datadog を利用 ダッシュボードは一つ アプリケーション全体の Owner
は1チーム このグラフ、要らな い気がするけど誰か 見てる人いるかも… 1つのダッシュボードを 15チームで使おうとしていた ダッシュボードに新し いセクションを追加し たいけど、隣のチーム が Owner だしな… お互いの気遣いで 改善が停滞 チームXの開発者 チームZの開発者 チーム横断の改善が必要で コスト高く進んでいなかった チームXがOwner アプリケーション エンドポイント群A チームYがOwner エンドポイント群B チームZがOwner エンドポイント群C 状況 推定原因
#o11y_findy 負債あるモノリスのオブザーバビリティに組織で向き合う@スタディサプリ 初手のアプローチ • Ownerチームを巻き込んで一緒に改善していく ◦ メンバ全員でなくて OK ▪ 予定調整で苦労したり、定例まみれになるよりは
一部メンバで軽量に進めたほうが有益 ▪ チームとして知識があること、と チーム内でサイロ化しないこと、は別の問題 ◦ 自分はリード役、ファシリテーション役を率先する
#o11y_findy 負債あるモノリスのオブザーバビリティに組織で向き合う@スタディサプリ 巻き込み力: 初手の声掛け Ownership を尊重し チームのスキル向上を支援 一緒に学ぶために ワークショップ形式を提案 毎週1時間の
devs 知見交換会の場を利用 → 興味のある色々な人が来てくれる
#o11y_findy 負債あるモノリスのオブザーバビリティに組織で向き合う@スタディサプリ 巻き込み力: 一筆 • 非同期コミュニケーションの活用 ◦ 事前に背景や意図を伝える • 記録として残す
◦ 再現性の参考にする ◦ 歴史として残す ◦ 過程で登場した問題を記録する
#o11y_findy 負債あるモノリスのオブザーバビリティに組織で向き合う@スタディサプリ ダッシュボード磨き込み会 場 オンライン 毎週火曜日 1時間弱 現時点で 5回実施 やっていること
方針の 相談と決定 具体の改善
#o11y_findy 負債あるモノリスのオブザーバビリティに組織で向き合う@スタディサプリ ダッシュボード磨き込み会 ダッシュボードOwnerチームから 必ず1人は参加してもらう 工夫した点 工夫の狙い Ownership を尊重し 自己組織化を支援
モブプロ形式で実施 Driver は Owner チームを優先 誰でも参加 OK いつのまにか 「Datadog 歯磨き」と 呼ばれるようになった チーム横断の知見共有
#o11y_findy 負債あるモノリスのオブザーバビリティに組織で向き合う@スタディサプリ 得られた成果 大方針の策定 Ownership に準じて機能やエンドポイント に特化した別ダッシュボードを作る 既存のダッシュボードは アプリケーション全体を 俯瞰して見られるものにする
注意: あくまでも弊組織での事例 自チームの裁量で監視可能にする 異常の原因を掘り出せるように整備する → オブザーバビリティ 期待する効果
#o11y_findy 負債あるモノリスのオブザーバビリティに組織で向き合う@スタディサプリ 得られた成果 不要/重複グラフ削除による ダッシュボードの軽量化 5XX を最もよく見るので HTTPリクエストのグラフから着手 進める中で具体的な問題が見えてきた (例:
SLOの問題、DBの監視不足) (個人的に嬉しかったこと) moppの休暇と会が被ったとき 問題なく進んでいたこと 例: ダッシュボードの一部
#o11y_findy 負債あるモノリスのオブザーバビリティに組織で向き合う@スタディサプリ 振り返り • オブザーバビリティへの道が一つ開けた ◦ お見合い状態が解消できた • Ownership と自己組織化が進む方向に迎えた
◦ これを一人ではなくみんなで決められたことが偉業
#o11y_findy 負債あるモノリスのオブザーバビリティに組織で向き合う@スタディサプリ まとめ • 今回やったことを型化してみる • オブザーバビリティ/監視を組織として推進するために 1. 問題に当たりを付ける 2.
メンツを集める 3. 場を用意する 4. 会を推進する コミュニケーションコストを抑えつつ Ownership を尊重する トピックに関心が高い人から集める 「乗っていき」がある人がいつでも参入できるようにする 既存の場に便乗するのが便利 「自分の知見を提供する」だと推進者が疲れるので 「みんなで学んでいく」方が気楽でいい 会の辞め時や方針転換の気配は見逃さないように注意
#o11y_findy 負債あるモノリスのオブザーバビリティに組織で向き合う@スタディサプリ フリー素材コーナー • ご自由にお使いください エンドユーザ1 Drawn by ujihisa https://x.gd/i1vWi
エンドユーザ2 Drawn by mopp https://x.gd/OE0Sn
#o11y_findy 負債あるモノリスのオブザーバビリティに組織で向き合う@スタディサプリ ご清聴ありがとうございました