サイト信頼性エンジニア (SRE) は、ソフトウェア エンジニアリングとシステム エンジニアリングの交差点に位置します。目的を達成するためにインフラストラクチャとソフトウェア コンポーネントを組み合わせる方法には無限の順列と組み合わせが存在する可能性がありますが、基礎的なスキルに焦点を当てることで、システムが独自のものであるか、サードパーティ製であるか、オープン システムであるかに関係なく、SRE が複雑なシステムやソフトウェアを操作できるようになります。特に、システムとインフラストラクチャのこれらの領域がどのように相互に関連し、相互作用するかを深く理解することが重要です。ソフトウェアとシステム エンジニアリングのスキルが組み合わされることはまれで、通常はさまざまなインフラストラクチャ、システム、ソフトウェアに触れることで時間をかけて構築されます。
SRE は、サイトの稼働を維持するためにエンジニアリング プラクティスを導入します。各分散システムは、多くのコンポーネントの集合体です。 SRE は、ビジネス要件を検証し、分散システムを構成する各コンポーネントの SLA に変換し、SLA の順守を監視および測定し、SLA 違反を緩和または回避するために再構築またはスケールアウトし、これらの学習内容を新しいシステムまたはプロジェクトにフィードバックとして追加します。これにより、運用の負担が軽減されます。したがって、SRE はシステムの設計の段階から重要な役割を果たします。
2019 年初め、私たちはインド全土のキャンパスを訪問し始め、LinkedIn とその複雑なテクノロジー スタックを構成するすべてのサービスを常に誰もが利用できるようにするため、最も優秀な人材を採用しました。 LinkedIn のこの重要な機能は、サイト エンジニアリング チームと、信頼性を専門とするソフトウェア エンジニアであるサイト信頼性エンジニア (SRE) の管轄下にあります。
この取り組みを続けるうちに、これらのキャンパスから、サイト信頼性エンジニアリングの役割には具体的にどのようなことが必要なのかについて多くの質問を受けるようになりました。そして、サイト信頼性エンジニアとして成功するために必要なスキルと専門分野をどうやって学ぶことができるでしょうか?数か月が経ち、キャンパスの学生の何人かがインターンまたはフルタイム エンジニアとして LinkedIn に参加し、サイト エンジニアリング チームの一員になりました。また、伝統的な SRE の経歴を持たない外部採用者も数名私たちの組織に加わりました。そのとき、私たちの何人かが集まり、どうすれば新卒エンジニアをサイト エンジニアリング チームに迎え入れることができるかを考え始めました。
初心者 SRE として習得する必要がある基本的なスキル セットについてガイドするリソースはほとんどありません。これらのリソースが不足しているため、個人が業界で空きポジションに就くのは難しいと私たちは感じました。私たちは、SRE としてのキャリアを築きたい人のための出発点として、School Of SRE を設立しました。このコースでは、強力な基礎スキルを構築することに重点を置いています。このコースは、より実際の例を提供し、これらの各トピックの学習が SRE の日常の職務責任においてどのように重要な役割を果たすことができるかを示すように構成されています。現在、School Of SRE では次のトピックを扱っています。
レベル101
レベル102
私たちは、継続的な学習がスキルセットを拡大するためにより深い知識と能力を獲得するのに役立つと信じています。各モジュールにはさらなる学習のためのガイドとなる参考資料が追加されています。私たちの希望は、これらのモジュールを学習することで、サイト信頼性エンジニアに必要な必須スキルを構築できるようになることです。
LinkedIn では、非伝統的な採用者や大学新卒者を SRE の役割に新人研修するためにこのカリキュラムを使用しています。私たちは新入社員のオンボーディング体験を複数回にわたって成功させ、このコースは彼らが非常に短期間で生産性を高めるのに役立ちました。このため、他の組織が新しいエンジニアをその役割に導入するのを支援し、意欲的な個人がその役割に就くためのガイダンスを提供できるように、コンテンツをオープンソース化することにしました。私たちが作成した最初のコンテンツは出発点にすぎないことを認識しており、コミュニティがコンテンツを洗練し拡張する旅に役立つことを願っています。始めるには、貢献ガイドを確認してください。