SRE(Site Reliability Engineering)は、サービスの信頼性をエンジニアリングの観点から高める職種として広まってきた役割です。インフラエンジニアやバックエンドエンジニアからのキャリアチェンジ先として注目されることが増えていると言われています。
SREとインフラエンジニアの違い
SREとインフラエンジニアは重なる部分も多いですが、SREは「信頼性をどう高めるか」を中心に据え、コードによる自動化や定量的な指標管理を重視する傾向があります。エラーバジェットやSLI/SLOといった概念を業務の中で扱うのが特徴です。
従来の運用業務に加え、ソフトウェアエンジニアリングの手法を取り入れて運用を改善していく考え方が求められるとされています。
SREに求められるスキル
SREポジションで求められるスキルは幅広く、以下のような領域がカバー対象になることが多いと言われています。
- クラウド基盤の設計・運用
- コンテナオーケストレーション(Kubernetesなど)
- モニタリング・オブザーバビリティの設計
- CI/CDパイプライン構築
- インシデント対応とポストモーテム文化
- プログラミングによる自動化(Python、Goなど)
すべてを完璧に身につける必要はありませんが、複数領域にまたがる視野を持つことが望ましいでしょう。
転職時にアピールしたい経験
SRE職に応募する際は、信頼性向上の取り組みを定量的に示せると評価されやすい傾向があります。「障害発生件数を削減した」「復旧時間を短縮した」「自動化により人的工数を削減した」などの具体例を整理しておくとよいでしょう。
また、ポストモーテム文化への理解や、開発チームと協働した経験なども、SREで重視されるソフトスキルとして語れる材料になります。
SRE職を志望する際の準備
SREの面接では、システム設計に関する議論や、障害対応のシミュレーションが問われることがあると言われています。Googleが公開しているSRE関連の書籍や記事は、考え方を学ぶ参考資料として広く知られています。
まとめ
SREへの転職を考える際は、ソフトウェアエンジニアリングと運用の両方の素養を磨き、信頼性向上のための取り組みを言語化することが重要です。自身の経験をSREの考え方に照らして整理し、応募に臨むとよいでしょう。
