深夜に障害が起きたとき、「またか」と思うエンジニアは多いと思う。
自分も飲み会で話すような嫌な思い出や大変だった記憶がいくつかあるので、せっかくだから書いておく。
深夜リリース
先日、転職して初めての深夜リリースをした。
DBのバージョンアップで、検証も当日の動作確認も問題なし。
安心しきって、あとはインフラチームがメンテ表示を戻して終了……という場面でエラーが出た。
そこかい、という感じだった。
調べても原因が特定できず、最終的にAkamaiが死んでいたみたい。
こちらでは何もできず、サポートの連絡を待つしかない。
サイトは公開できない、売上は落ちる。
明日マーケや営業からクレームが来るんだろうな、と思いながらログを眺める時間。
ようやく落ち着いて2時間だけ仮眠をとったあと、そのまま担当だった朝の通常リリースへ。
今度はコンフリクト解消が原因でデザイン崩れが発生し、一部切り戻し。
hotfixはすぐ出せたけど、問い合わせが来た瞬間は普通に焦る。
「簡単そうだし」と思って通常リリースを代わってもらわなかったのを猛烈に後悔。
こういうのが重なる日というのが、たまにある。
上司不在の日
普段いる時は何も起きないのに、休みや出張のタイミングに限ってリリースでエラーが出る。
エラーそのものも大変だが、それ以上に
「この判断、誰が持つ?」
という状況のほうが重い。
承認フローが止まる。
誰に連絡するか迷う。
判断が宙に浮く。
技術的な問題より、意思決定の問題のほうが時間を食う。
金曜の夕方
定時30分前に「ちょっと確認です」と来る。
「ちょっと確認です」は、ちょっとじゃない。
もし不具合なら土日は基本動けない。
だからその日のうちに解決しないといけない。
結果として、金曜の夜に調査が始まる。
年末年始
休み中に問い合わせが来る。
一瞬で
「これ不具合だったらどうするんだろう」
と頭が回る。
一応、パソコンは持って帰省している。
でも、できれば開きたくない。
結果的にインフラチームの人が対応してくれて、自分に本格的な調査依頼が来る前に解消した。
助かった。
ただ、連絡が来た瞬間のハラハラは、なかなか消えない。
前職:終電後1時に在宅集合
客先常駐のとき、旅行前日の金曜22時にシステムエラーが起きた。
正直に旅行の予定を伝えたら、
「一回帰宅して、終電後1:00に在宅で集合して暫定対応しよう」
という話になった。
客先PMはすでに帰宅していて連絡がつかない。
最終判断者も曖昧なまま、とにかく集まる。
幸い暫定対応はうまくいき、寝不足のまま旅行には行けた。
行けたけど、あれはかなり焦った。
まとめ
深夜、上司不在、金曜夕方、休み中、旅行前日。
統計的には偶然なのはわかっている。
うまくいった深夜リリースは記憶に残らないし、何も起きなかった金曜は数えない。
焦りを少しでも減らすために、いくつか対策してはみるものの、
- 連休前や金曜はできるだけリリースしない
- 上司不在時の判断フローを事前に決めておく
- リスクを書き出して影響度や発生確率を整理しておく
それでも、自分の作業以外が要因のエラーはもうどうしようもない。
だから今後もきっとまた「なんで今日に限って」って嘆いていると思う

コメント