ソフトウェア開発とITの分野では、サイトリライアビリティエンジニアリングの重要性が高まっています。ソフトウェア開発とIT運用が交差する場所が、まさにサイトリライアビリティエンジニアリングであるためです。Ben Treynor氏の言葉を借りると、サイトリライアビリティエンジニアリングは「ソフトウェアエンジニアに運用機能の設計を依頼する際に生じる仕事」です。
サイトリライアビリティエンジニアリングは、人、プロセス、技術システムのレジリエンスを向上させるために、開発者がイニシアチブを取ってサービスや機能を構築する方法です。サイトリライアビリティエンジニアリング自体は目立たない活動ですが、チーム全体の生産性およびチームのアプリケーションとインフラの信頼性の向上に大いに寄与します。ソフトウェアデリバリーライフサイクルの効率性とレジリエンスを継続的に改善することに魅力を感じているのであれば、サイトリライアビリティエンジニア(SRE)の仕事に就くことを強くお勧めします。
そこで、候補者と採用マネージャーの両方に役立つSRE面接ガイドをこのブログ記事にまとめました。次回のSRE面接の準備にぜひご活用ください。
SREは基本的に、ソフトウェア開発者と従来のIT運用部門を完全に融合した役割を担います。
SREは本質的に、先進的で効率的なDevOps文化を尊重します。信頼性の問題を時間をかけて特定し、それらに取り組む専任チームを編成すれば、信頼性の確認とテストを開発ライフサイクル内の初期の工程に組み込むことができます。さらに、SREはIT部門からの懸念や情報を開発チームにフィードバックする役割も果たします。これは、レジリエンスに優れた迅速なソフトウェア開発につながります。
SREは、自分たちが構築したサービスの説明責任を負わないという開発者の固定観念を覆すのに役立ちます。SREがDevOpsの方法論を活用すれば、IT部門と開発者の間にある溝を埋めることができます。また、従来のIT部門と開発者の間に「十分な意思疎通もなく壁越しに仕事を投げる」という風潮が依然として存在していると思われる場合でも、SREチームはシステムの価値を遡及的に高めていくことができます。SREチームは、本番環境でテストを実施し、レジリエンスに特化した新しい機能を継続して追加することで、人、プロセス、テクノロジーを向上させる新しい方法を絶えず見つけていきます。
最初に「自分はSREとして働きたいと思うか?」と自問しなければなりません。この質問に答えるには、これからどのような仕事をするのかを知る必要があります。SREの役割についての面接を始める前に、以下のようなサイトリライアビリティエンジニアの一般的な任務を理解する必要があります。
どのエンジニアリング部門やIT部門でも業務内容が同じであるとは言えませんが、SREの面接で予想される共通の質問がいくつかあります。以下の質問と説明は、SREの面接に臨む際の準備に役立つでしょう。
この質問に対する答えはチームによって異なりますが、通常は以下の点を強調するとよいでしょう。
専任のDevOpsチームを設立する組織もあれば、DevOpsの方法論に従うだけの組織もあります。これまでSREを活用してきた方法と、将来のITやソフトウェア開発の全体的な信頼性と効率の向上にSREがどのように貢献するのかについて深く考えていれば、面接担当者は納得します。
他のほとんどの就職面接と同様に、仕事の役割に魅力を感じている理由を述べることは重要です。SREは必ずしも華々しい役割だと見なされているわけではありません。多くの開発者はむしろ敬遠するでしょう。そのため、システムの信頼性を高め、顧客や従業員の満足度向上につながるサービスを構築する役割になぜ魅力を感じているのかについて話すことが大切です。
SREチームへの加入はワクワクするような経験です。プロダクトマネージャーからエンドユーザーまで、すべての人に大きな影響を及ぼせる仕事だからです。
単純な質問に思えますが、注意が必要です。これは意味の深い質問です。面接担当者は、デプロイパイプラインを分析し、それを変更する場合に賢明な決定を下せるかという候補者の能力を判断したいと思っています。その理由は、SREチームが以下のような仕事を全面的に任されるためです。
チームが従業員の生産性やプロセスに過度な影響を与えることなく、レジリエンスを最大限に強化できる個所を判断できるということは、そのチームに高い問題解決能力があるという証拠です。
これは、監視ツールとアラートツールをどのように設定しているか、およびシステムの「正常な」状態の定義をこれまでどのように支援してきたかを判断するための、優れた技術的質問です。
SREチームに加入したいなら、内部および外部の出力を両方活用してシステム全体が正常かどうかを判断する方法を理解している必要があります。そして、その情報をITチームとエンジニアリングチームが活用できるインサイトとアクションに変換できる必要があります。
これは手っ取り早く、単刀直入な質問です。言うまでもなく、面接担当者は、仕事をする際に必要になる言語や技術システムに精通しているかどうかを知りたいと思っています。
SREにはエンジニアリング部門やビジネスの多くの側面が関係するため、生産性における人的ボトルネックを特定できることは重要です。面接担当者はこの質問で、複数部門を横断するチーム間で生じる問題の解決に候補者がどのように取り組むかを判断しようとしています。たいていの場合、これは、さまざまな部門間でコミュニケーションや可視性を向上させる方法を見つけるのと同じくらいシンプルです。必要な情報を必要なときに見つけられるように人々を助けるのです。
どのサイトリライアビリティエンジニアにとっても、その任務の中核をなすと考えられるのは、オンコールの効率と担当要員のQOL (Quality Of Life)の管理です。そのため、SRE面接では、人道的なオンコール業務の構築にどのように取り組むのかを示す必要があるでしょう。オンコール業務を改善するために何ができるでしょうか?
オンコールとは単にプロセスやツールを使用することではありません。この質問に取り組む際には、オンコールのローテーションやアラートルールの設定時に中心とすべきなのは人であるという視点を絶対に忘れないでください。
SREは、エンジニアリングチームで担う役割の中で最も充実感の高い役割の1つです。SREは自律的な判断のもとに、組織的な変更を行い、システムの信頼性を高めるための実験を実施する必要があります。SREになれば、自分が顧客や同僚の生活を大いに向上させることができる立場にいると、何度も実感するでしょう。
SREになれば、ITやソフトウェア開発の分野でさらに多くを学ぶことも期待でき、その結果、ソフトウェアデリバリーライフサイクル全体に関する知識を深め、さらに優れた開発者になることができます。
このブログはこちらの英語ブログの翻訳です。
この記事について誤りがある場合やご提案がございましたら、ssg-blogs@splunk.comまでメールでお知らせください。
この記事は必ずしもSplunkの姿勢、戦略、見解を代弁するものではなく、いただいたご連絡に必ず返信をさせていただくものではございません。
Splunkプラットフォームは、データを行動へとつなげる際に立ちはだかる障壁を取り除いて、オブザーバビリティチーム、IT運用チーム、セキュリティチームの能力を引き出し、組織のセキュリティ、レジリエンス(回復力)、イノベーションを強化します。
Splunkは、2003年に設立され、世界の21の地域で事業を展開し、7,500人以上の従業員が働くグローバル企業です。取得した特許数は1,020を超え、あらゆる環境間でデータを共有できるオープンで拡張性の高いプラットフォームを提供しています。Splunkプラットフォームを使用すれば、組織内のすべてのサービス間通信やビジネスプロセスをエンドツーエンドで可視化し、コンテキストに基づいて状況を把握できます。Splunkなら、強力なデータ基盤の構築が可能です。