🔖
「時間が足りないから自動化できない・・」"システム運用アンチパターン"を読もう。
システム運用アンチパターンを読みました。
開発組織にありがちな生産性が低下する要因に、DevOpsの観点から対処する方法を紹介しています。
本書にユニークなのは、エンジニアが組織の意思決定権限を持たなかったとしても、自発的にチームにDevOpsマインドを導入し始めるための現実的な手法を紹介しているところです。
カジュアルに読むにしてはボリュームが多く、とっつきづらさを感じるかもしれません。
共感する章があればかいつまんで読む、というのもおすすめです。
"どのような課題を持っている人がこの本を読むべきか"という観点から、各章の概要を紹介します。
2章.パターナリスト症候群
- 読むべき人
- 多数の承認プロセスがあり、コミュニケーションコストの増大が生じている
- 承認プロセスによって、デプロイ感覚が大きくなり、顧客に価値を提供するスパンが長くなっている
- インシデントの度に承認プロセスが増えている
- 読むとわかること
- 手動による承認を自動化されたプロセスに置き換える方法
"パターナリスト"は、強い立場にある者が弱い立場にある者に介入してコントロールすることを指します。
パターナリストは学習性無気力感を生み、諦めの空気が組織に蔓延することも。
3章.盲目状態での運用
- 読むべき人
- インシデントの原因特定にいろいろな部署を巻き込み、てんやわんやになっている
- インシデントの解消に時間がかかる
- メトリクスとログを効果的に活用できていない人と感じる
- 読むとわかること
- 障害発生時に大きな力となる、追跡すべきメトリクス
- ほとんどのシステムでエラー率・レイテンシ・スループットが有用。
- 価値のあるログ
- 障害発生時に大きな力となる、追跡すべきメトリクス
4章.情報ではなくデータ
- 読むべき人
- データが多すぎてどれが役に立つかわからない
- どんなデータが手元にあるのかわからない
- 作ったダッシュボードが使われない
- 読むとわかること
- 目的に応じた利用しやすいダッシュボードをデザインするための実践的なヒント
5章.最後の味付けとしての品質
- 読むべき人
- 品質はQAに任せきりの人
- 読むとわかること
- 開発の初期段階から、開発チーム自身が品質を担保するテスト戦略
"最後の味付けとしての品質"は、品質というのはスパイスのように最後にサッとかければ美味しくなるものではない、という至言です。
6章.アラート疲れ
- 読むべき人
- 「これはやばいアラートかな・・・・?」
- 「ああ、いつものアラート・・これは大丈夫なやつ。」
- 毎日の緊急エラー対応依頼にエンジニアが燃え尽き、不満を持っている
- 読むとわかること
- アラート設計
- 行動可能であり、タイムリーな、優先順位がつけられたアラート
- サステナブルな緊急対応体制
- アラート設計
7章.空の道具箱
- 読むべき人
- 時間が足りない/優先度が低いから自動化しない
- 手動が前提のGUIプロセスが多い
- デプロイのたびに数分で終わる手動の手順を行なっている
- "秘伝のタレ"のような暗黙の手順がある
- 秘伝のSQLストックが大活躍している
- 読むとわかること
- なぜ自動化が重要か
- 自動化を推奨する文化
- 自動化に取り組む戦略
- 自動化シェルスクリプトの例
8章.業務時間外のデプロイ
- 読むべき人
- デプロイは恐怖だ
- デプロイは一世一代、乾坤一擲の作業だ
- 読むとわかること
- リリースサイクルを早めるリスクが低いデプロイ戦略
9章.せっかくのインシデントを無駄にする
- 読むべき人
- 振り返りをおこなっていない
- インシデントが発生すると責任のなすり付け合いが始まる
- 読むとわかること
- インシデントを人の問題として批難し、問題を放置する文化の副作用
- インシデントをシステムの問題として捉え、サステイナブルに対処する方法
- システムの改善に集中するためのポストモーテム
10章.情報の溜め込み:ブレントだけが知っている
- 読むべき人
- キーパーソンに情報が集中している
- バス係数が小さい
- バス係数とは、「プロジェクトメンバーが何人バスに轢かれたらそのプロジェクトが破たんするか」という属人性を図るための目安です
- 読むとわかること
- ドキュメンテーションで知識共有を習慣化する手法
11章.命じられた文化
- 読むべき人
- HPの美辞麗句な文化が形骸化している
- より良い結果を生み出す文化を育てたい
- 読むとわかること
- 組織の文化が与える影響
- 企業文化に影響を与えるために個人としてできること
- 文化に適合する人材を判断する採用面接
12章.多すぎる尺度
- 読むべき人
- 設定された目標を追った結果、部署間の対立が発生したり、部分最適的に陥ったりする
- 予定外の作業の連続でスケジュール通りに行かない
- 読むとわかること
- 高いパフォーマンスを生み出す目標設定
- 優先順位を決め、チームが重要なことに集中する方法
Discussion