Slide 1

Slide 1 text

CRE から学ぶ障害対応術 〜暫定対応と恒久対応〜 マネーフォワードビジネスカンパニーERP開発本部・福岡第一開発部 Technical Lead 宮村 紅葉 / Miyamura Koyo

Slide 2

Slide 2 text

自己紹介 2

Slide 3

Slide 3 text

自己紹介 miyamu / 宮村紅葉 @KoyoMiyamura (X) koyo-miyamura (GitHub) 推しのプログラミング言語 Elixir 出身 熊本 経歴 2019年4月 面白法人カヤックに新卒入社 2021年9月 マネーフォワード福岡拠点ガーディアングループ(CRE) 2024年12月 クラウド経費テックリード これまで対応してきた障害は大小合わせると100は軽く超えています笑 3

Slide 4

Slide 4 text

障害対応でやりがち なこと 4

Slide 5

Slide 5 text

時間のかかる「恒久対応」から始めてしまう! 5

Slide 6

Slide 6 text

しかしこれではユーザーは困ってしまう! 6

Slide 7

Slide 7 text

Q. ユーザーが本質的に求めていることは? 7

Slide 8

Slide 8 text

A. とにかくいつも通り使わせてほしい! 8

Slide 9

Slide 9 text

障害対応において 大切なこと 9

Slide 10

Slide 10 text

暫定対応 -> 恒久対応 まずはとにかく止血をする(= 暫定対応) Datadog などでメトリクスを確認 / ログ収集 メトリクス・ログからユーザーへの影響を逆算して整理 なるべくビジネスモデルも踏まえて考える 例: エンタープライズユーザーへのインパクト ユーザー・ビジネスへの影響を最小限にする迅速な対応を優先 例: 一時的にバッチ処理を止める・サーバー台数を倍増する アンチパターンにこだらない その後にやっと恒久対応 Postmortem の実施 システム不具合を修正 ログ・メトリクスの拡充 10

Slide 11

Slide 11 text

暫定対応と恒久対応の順を逆にしてはいけない エンジニアは問題を見つけると解決したくなる しかし障害対応において第一に必要なのは「解決」ではなく「解消」 どうしても「これもっといいやり方あるんじゃない」とか思いがち エンジニアとして根本的な問題解決したい気持ちをグッと抑えて、泥臭くてもいい から、とにかくユーザーの不利益を最小限にしよう 11

Slide 12

Slide 12 text

CRE の経験は障害対応に活きる 普段から CS / カスタマーサクセス などの人々と会話する 障害時に、何を優先すべきかをクイックに聞ける CRE の経験によりユーザー目線を獲得できる 障害に困っているユーザーは必ずしも100%の解決策を求めていない 恒久対応時により幅広いアイデアが出る ユーザーがよく使う機能により重点的にログを仕込むなど 12

Slide 13

Slide 13 text

まとめ 13

Slide 14

Slide 14 text

まとめ システム障害でまず大事なのは恒久対応ではなく「暫定対応」 顧客ありきのシステム。ユーザーが一番不利益を被らないようにすることが大 事! CRE 経験は障害対応に活きる! 14