SREに求められるスキルと心構え
必要なスキル
コーディングスキル
シンプルな記述方式と豊富なモジュールが特徴
SSHを用いたエージェントレス実行により、既存環境への導入が容易
Playbookによる宣言的な構成管理が可能
クラウドリソースのプロビジョニングに特化したIaCツール マルチクラウドに対応
システムと障害モードの理解
システムの障害シナリオを整理
ハードウェア障害: サーバ、NW機器、ストレージなどの物理的な故障
ソフトウェア障害: アプリケーション、ミドルウェア、OSなどの不具合やバグ
外部依存サービスの障害: 外部APIやクラウドサービスなどの停止や応答遅延
人為的ミス: 設定ミス、デプロイミスなどのヒューマンエラー
パフォーマンス劣化: トラフィック増大、リソース不足に起因する性能低下
セキュリティインシデント: 不正アクセス、DDoS攻撃、情報漏洩などのセキュリティ脅威
分散システムの理解
様々な障害モード
ネットワーク分断
ノード障害
データ不整合 など
信頼性を支える技術
負荷分散
データレプリケーション
分散トレーシング
Pod配置の最適化
リソース制御
ネットワーク設計 など
統計とデータ可視化スキル
統計の概念を理解することで、データの分散や外れ値を適切に判断できる
相関関係を見抜き、因果関係を推定
グラフやダッシュボードを効果的に活用
ホスピタリティとチームワーク
SsreREの究極的な目標はユーザーに価値を届け続けること
SREはユーザー視点に立ち、サービス品質の維持と向上に尽力する
SREの仕事は一人ではなし得ない。チーム内外の関係者とスムーズにコミュニケーションを取り、課題解決に導く。そのためのリーダーシップとフォロワーシップが問われる 失敗から学ぶ姿勢こそが、信頼性向上の原動力
SREの取り組みは、技術的な成果だけでなく、ビジネスの価値創出につながってはじめて意味を持つ
SLOの達成が、ビジネス価値にどう貢献するかを明確にする SREの取り組みを定量的に評価し、ビジネスインパクトを可視化することが大切
稼働率の改善がもたらす収益への貢献
数字で示すことで、SREの存在価値を経営層に伝えることができる
SREの真髄は、単なる技術の適用ではなく、組織文化そのものの変革にある
SREのマインドセットを組織の隅々にまで根付かせることがSREの重要な役割
信頼性を重視する価値観
学習と成長を尊ぶ風土
協調性と自立性のバランス
失敗から学ぶ
SRE組織の成熟度モデルと発展ステージ
1. 消防士: 日々の障害対応に追われる状態
2. ゲートキーパー: SREがリリースの可否を判断する役割を担う
3. 提唱者: SREの実践を組織に広めていくフェーズ
4. パートナー: 開発チームとSREの境界がほぼ無くなる
5. エンジニア: SREと開発の区別がなくなる