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
syossan27
May 18, 2023
Programming
9
3.2k
サイト信頼性を高める前に開発チームからの信頼性を高めよう
2023/05/19
「SRE大集合!みんなで学ぶ、信頼性を高めるための取り組みLT大会」発表資料
https://findy.connpass.com/event/281605/
syossan27
May 18, 2023
Tweet
Share
More Decks by syossan27
See All by syossan27
知識0からカンファレンスやってみたらこうなった!
syossan27
4
230
突然のメモリ使用率上昇へ対応! k8sカスタムコントローラー開発事例
syossan27
2
320
監視 やばい
syossan27
12
10k
最先端を追う前に、まず広めよう! 〜AIツールの普及活動のすすめ〜
syossan27
1
1.3k
Fanstaの1年を大解剖! 一人SREはどこまでできるのか!?
syossan27
2
610
SRE Trail Mapから考える仲間の増やし方
syossan27
3
640
FanstaにおけるCI・CDの紹介と培った知見
syossan27
2
370
TerraformサポートされていないFirebase Remote ConfigでもIaCしてみた
syossan27
2
1.4k
実録!一人SREが直面している技術的負債
syossan27
8
3.7k
Other Decks in Programming
See All in Programming
2025年のz-index設計を考える
tak_dcxi
11
4.2k
By the way Google Cloud Next 2025に行ってみてどうだった
ymd65536
0
130
データベースの技術選定を突き詰める ~複数事例から考える最適なデータベースの選び方~
nnaka2992
0
560
個人開発の学生アプリが企業譲渡されるまで
akidon0000
2
1.2k
AIコーディングの本質は“コード“ではなく“構造“だった / The essence of AI coding is not “code” but "structure
seike460
PRO
2
360
状態と共に暮らす:ステートフルへの挑戦
ypresto
3
1.2k
「理解」を重視したAI活用開発
fast_doctor
0
300
プロダクトエンジニアのしごと 〜 受託 × 高難度を乗り越えるOptium開発 〜
algoartis
0
210
Embracing Ruby magic
vinistock
2
230
Orleans + Sekiban + SignalR でリアルタイムWeb作ってみた
tomohisa
0
240
一緒に働きたくなるプログラマの思想 #QiitaConference
mu_zaru
81
21k
KANNA Android の技術的課題と取り組み
watabee
1
480
Featured
See All Featured
Why Our Code Smells
bkeepers
PRO
336
57k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.3k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
41
2.3k
The Straight Up "How To Draw Better" Workshop
denniskardys
233
140k
Fontdeck: Realign not Redesign
paulrobertlloyd
84
5.5k
How GitHub (no longer) Works
holman
314
140k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
160
15k
Making Projects Easy
brettharned
116
6.2k
The World Runs on Bad Software
bkeepers
PRO
68
11k
Product Roadmaps are Hard
iamctodd
PRO
53
11k
Writing Fast Ruby
sferik
628
61k
A Modern Web Designer's Workflow
chriscoyier
693
190k
Transcript
©MIXI サイト信頼性を高める前に 開発チームからの信頼性を高 めよう 井上 翔太
©MIXI 自己紹介 名前:井上 翔太 twitter:@syossan27 2019年にミクシィ(現MIXI)入社 サーバーサイドを中心に開発していたが、最近は SREチックなことをやっています 2
©MIXI 今日お話すること 3
©MIXI サイト信頼性も大事だけど 開発チームとの信頼性も大事だよね! というお話 4
©MIXI 1. はじめに 2. 開発チームからの信頼性を高める重要性 3. 信頼性を高めるために 4. まとめ 5
©MIXI 1. はじめに 6
©MIXI こんなサービスやってます スポーツ観戦ができる飲食店に特化した飲食店検索サービス 7 • スポーツ観戦できる飲食店をエリアやチーム、放映予 定から検索し、予約できる • お店にとってはスポーツ観戦ができることを告知し、集 客することができる
©MIXI 開発チーム人数: 7人 SREチーム人数:1人 どのくらいの規模のサービス? リリースされてから:2年 MAU/WAU/DAU: ユーザー登録数: 徐々に大きくなってきてる 8
©MIXI 一人SREチーム立ち上げました ▪ 2021/03〜 とある機能の実装の流れからインフラをちょこちょこと触るようになる ▪ 2021/04〜 負荷計測・パフォーマンスチューニング、インフラ・デプロイフローの障害時調査などのタスクに積極的 に関わる ▪
〜2021/10 上記を続けながらアラートを追加したり整理したり、トイルを無くすように仕組み作りをしたり、インシ デント管理をしたり・・・ 9
©MIXI あれ?これってSREってやつなんじゃない? 10
©MIXI あれ?これってSREってやつなんじゃない? 11 →やろうぜ、SRE
©MIXI その後、どういうことを考え・何をやったかは 是非こちらを見てみてください! 12 「小さなサービスでの SREとの付き合い方」 (動画と資料の両方あります)
©MIXI 2. 開発チームからの信頼性を高める重要性 13
©MIXI SREは一人じゃできない 一人SREを実践してみて・・・ 14
©MIXI SREは一人じゃできない 一人SREを実践してみて・・・ → とにかくリソースが足りない!! 15
©MIXI SREは一人じゃできない 一人SREを実践してみて・・・ → とにかくリソースが足りない!! 16 すぐにSREを採用できるわけではないので、開発チームにも協力してもらわなければいけな い場面が多々ある。 • オンコール対応
• 各種MTGのファシリを開発チームのみで回してもらう • 一部作業を開発チームでも手伝ってもらう • エラーバジェット超過時のリリースストップ • 開発チームの開発体験を高めるための意見をもらう • etc…
©MIXI SREは一人じゃできない 一人SREを実践してみて・・・ → とにかくリソースが足りない!! 17 すぐにSREを採用できるわけではないので、開発チームにも協力してもらわなければいけな い場面が多々ある。 • オンコール対応
• 各種MTGのファシリを開発チームのみで回してもらう • 一部作業を開発チームでも手伝ってもらう • エラーバジェット超過時のリリースストップ • 開発チームの開発体験を高めるための意見をもらう • etc… → 開発チームからの信頼性を高めて、これらを円滑に行う!
©MIXI 3. 信頼性を高めるために 18
©MIXI まずは失敗した話から・・・ 最初にSREとして開発チームの抱える問題をキャッチアップし、SREというポジションについての役割理 解と問題解決を兼ねて以下のような施策をやりました。 • 目安箱:Google Formsを使い、開発上困ったことをいつでも投票してもらうようにした • 相談アワー:Gatherを使い、口頭ベースで相談を受け付ける時間を設けた 19
©MIXI まずは失敗した話から・・・ 最初にSREとして開発チームの抱える問題をキャッチアップし、SREというポジションについての役割理 解と問題解決を兼ねて以下のような施策をやりました。 • 目安箱:Google Formsを使い、開発上困ったことをいつでも投票してもらうようにした → ほぼ使われず・・・ •
相談アワー:Gatherを使い、口頭ベースで相談を受け付ける時間を設けた → 目安箱よりも手応えはあったものの、あまり使われず・・・ 20
©MIXI まずは失敗した話から・・・ 最初にSREとして開発チームの抱える問題をキャッチアップし、SREというポジションについての役割理 解と問題解決を兼ねて以下のような施策をやりました。 • 目安箱:Google Formsを使い、開発上困ったことをいつでも投票してもらうようにした → ほぼ使われず・・・ •
相談アワー:Gatherを使い、口頭ベースで相談を受け付ける時間を設けた → 目安箱よりも手応えはあったものの、あまり使われず・・・ ⇒ 受け身な施策はまず使われない • そもそもSREに相談するに値する問題なのかが判断がつかない • 相談者に心理的ハードルが生じる(単純に面倒であったり、作業時間を割きたくないなど) 21
©MIXI やり方、変えました その場その場での施策を打つのではなく、日常的に開発チームからの信頼/理解を得られるよう行動した • SREタスクのみではなく、プロダクト開発に関わる → 機能実装というよりも、より開発体験を高めるためのアーキテクチャの刷新などを行った (Fragment Colocationの導入、放置タスクの拾い上げなどなど) ⇒
ちゃんとプロダクトに目を向けてますよということをアピール ⇒ ただ、いつもプロダクト開発をやるわけじゃないよということも伝えておく • 開発チームが困っていたらすぐ助ける → チャットに目を光らせておき、何か困りごとがあればスッと助けに入る (調査を手伝うだけでも困っている人からすると助かるので、解決まで助けに入らなくてもOKというスタンスで) ⇒ なにかあったら助けてくれる人、という印象を付ける ⇒ 解決まで導けたら信頼も築ける 22
©MIXI • 開発チームから声をかけていただく機会が増えた • 「これSREチームのタスクの範疇ですかね?」や「(インフラが関係しそうな事象について)SREとしてどう 思います?」などMTGなどの要所要所で引き合いに出してもらえることが増えた • SREタスクも一部開発チームがやってくれることがチラホラ発生するようになった • SREとしても簡単なことでも開発チームに気兼ねなく聞ける
• お互いに信頼性がある状態だと「こんな簡単なことを聞くのも気が引けるなぁ」ってことも気兼ねなく聞ける • オンコール対応時などは非常に助かってます(雑に「◦◦知ってる人教えて!」って聞いちゃってる) ⇒ 結果として、やってよかった! ⇒ 現在はSREタスクに全力集中させてもらっているが、その前に早い段階で意識を変えて信頼性の獲得に 取り組んでおいて良かった ⇒ SRE本※ に書いてある「コミュニケーションとコラボレーション」の第一歩 いい感じになりだした 23 ※ Betsy Beyer, Chris Jones, Jennifer Petoff, Niall Richard Murphy (2017年) SRE サイトリライアビリティエンジニアリング - Googleの信頼性を支えるエンジニアリングチーム- オライリージャパン
©MIXI 4. まとめ 24
©MIXI ソフトスキルの重要性 SREと開発チーム、お互いがリスペクトを持って仕事を進めるためにはソフトスキルはハードスキルと同 じくらい重要性を持つ。 SLOの設定やfour-keysの導入などのプラクティスを実施するのも大切だけども、こういったコミュニ ケーションに関する心持ちも大切にしていきたいですね 最高の設計と実装は、お互いを尊重する雰囲気の下でプロダクションとプロダクトに対する関心が 1つになった ときに生まれるもので、それこそが SRE
が約束するものです。※ 余談: 6月に開催されるSRECon23 Asia/Pacificでも「The Secret Weapon for a Successful SRE Career」という タイトルでソフトスキルに関するセッションがあるみたいなので楽しみですね 25 ※ Betsy Beyer, Chris Jones, Jennifer Petoff, Niall Richard Murphy (2017年) SRE サイトリライアビリティエンジニアリング - Googleの信頼性を支えるエンジニアリングチーム- オライリージャパン より引用
©MIXI 日々のコミュニケーション、大切にしていきましょう! ご清聴ありがとうございました 26