効率的な SRE (サイト信頼性エンジニアリング)を実現!成果を出すための SRE のチーム構築方法とは?

効率的な SRE (サイト信頼性エンジニアリング)を実現!成果を出すための SRE のチーム構築方法とは?

SRE技術ブログ

効率的な SRE (サイト信頼性エンジニアリング)を実現!成果を出すための SRE のチーム構築方法とは?

システムの管理・運用を効率化するためには、 SRE が有効な選択肢の一つになります。しかし、 SRE は複数部署を巻き込んで進める大規模なプロジェクトであり、自社の状況にマッチした適切な SRE チームを結成して初めて成功に導くことができます。

本記事では、 SRE の基本や成果を出すための SRE チームの作り方、具体的なチーム組成の事例などを一挙にご紹介します。自社で SRE の実践を検討されている方は、ぜひ最後までご覧ください。

まずは、 SRE の基礎知識について理解しておきましょう。

SRE は「 Site Reliability Engineering 」の略であり、 Google が提唱しているシステム管理・サービス運用に対するアプローチ手法を意味する言葉です。 システムにおける「信頼性」を重要機能の一つとして位置付けている点が SRE の大きな特徴となっています。

従来のシステム開発においては、開発担当者と運用担当者が別々に稼働していることが一般的でした。しかし、開発担当者は新機能の追加を優先したい一方で、運用担当者はシステムの安定稼働を優先するなど、両者の考え方の違いによって、担当者間で衝突が発生することも珍しくありませんでした。

そして、このような課題を解決するために生み出されたのが SRE という考え方です。 SRE は開発担当者と運用担当者の密な連携が前提となっており、開発・運用のバランスを適切にコントロールすることで、担当者間の衝突をなくし、システム運用の改善に繋げます。

近年、企業が保有するデータ量は爆発的に増加しており、その種類も多様化しています。このような状況下においては、システムの信頼性は益々重要な指標の一つとなっているため、企業がシステムの開発・運用について検討する際には、 SRE が有効な考え方の一つになると言えるでしょう。

関連記事:SRE とは?基本的な知識や実施ステップなどを分かりやすく解説!

ここまで、 SRE の概要について解説してきましたが、なぜ SRE チームが重要視されているのでしょうか?

前述した通り、 SRE では開発担当者と運用担当者など、複数部署の担当者が連携しながらプロジェクトを進めます。そのため、特定の部署だけでアクションを進めることは困難であり、 SRE に特化した専門チームの結成が重要なポイントになります。

また、「 SRE の実現」という共通目的を持ったチームを作ることで、 SRE プロジェクトの進捗を組織として適切に管理できるようになるため、結果として迅速かつ高精度な SRE の実現に繋がります。

なお、 SRE チームの構成を考える際には、プロダクト横断的なチームを結成することも有効な手段になります。例えば、 SRE チームの担当者を開発チームにも所属させて、それぞれ「 0.5 」ずつの割合で兼務するようなケースが該当します。

このように、

  • SRE 担当者を開発チームのみの所属にする
  • SRE 担当者を開発チームとは別の SRE チームに所属させる
  • SRE 担当者を SRE チームと開発チームで兼任させる
  • SRE 担当者をプロダクトチームのみの所属にする
  • SRE 担当者を全プロダクト共通のチームに所属させる

など、 SRE チームを検討する場合は、様々な選択肢が存在しますが、その会社の事業・サービス、状況によって最適な体制は異なるため、ここでは詳細説明は割愛させていただきます。

当社センティリオンシステム大阪営業所でも、最適な SRE チームづくりを全面的にサポートしています。自社において、どのようなチームを結成すれば良いのか、どのようなチームなら適切に機能するのか、などを相談したい方は、問い合わせフォームよりお気軽にご連絡ください。

SRE チームを構築する上では、

  • 人材
  • 運用方法
  • 組織文化

の 3 つの要素をもとに検討を進めることが大切です。

以下、それぞれの要素について詳しく解説します。

人材

人材は SRE チームを構築するうえで必要不可欠な要素の一つです。どのようなスキルを持った人材が何名必要なのか、事前にシミュレーションを行い、最適な SRE チームの構成を検討してください。

なお、 SRE チームに求められる具体的なスキルとしては、

  • システム管理
  • システム開発
  • セキュリティ
  • ネットワーキング

などが挙げられます。

また、 SRE を効率的に進めるためには、複数部署の人材を集めて、 SRE チームに多様性を持たせることが重要であるため、人材選出の段階でこの点を意識しておくと良いでしょう。

運用方法

SRE は一過性の取り組みではなく、継続的に PDCA サイクルを回すことで精度が高まる中長期的なプロジェクトです。そのため、 SRE を効率化するための運用方法を定めることも重要なポイントの一つであると言えます。例えば、 SRE チーム内での役割分担や定例会の開催頻度など、各種運用に関するルールを決めてドキュメントにまとめておくことで、全員が共通認識を持って SRE を実践できるようになります。

また、 SRE が開発・運用のどちらかに偏ってしまうと、自社のシステム管理やサービス運用を最適化することは困難になります。 SRE を運用する場合は、開発と運用のバランスを常に考えて、具体的なアクションを検討することが重要なポイントだと言えるでしょう。

組織文化

SRE を成功させるためには、社内関係者からの協力が必要不可欠です。いくら SRE チームが多くの業務をこなしたとしても、周囲の協力を得られなければ、プロジェクトが失敗に終わってしまう可能性は高まります。そのため、まずは SRE のメリットや導入効果を経営層や社員に対して説明し、 会社全体で SRE を推進するための組織文化を醸成することが大切です。これにより、 SRE チームのアクションを加速させることができ、プロジェクトを円滑に進められるようになります。

成果を出せる SRE チームを構築するためには、適切な手順でアクションを進めていく必要があります。本章では、成果を出すための SRE チームの作り方を具体的な 5 ステップでご説明します。

Step.1 SRE の目的を明確化する

まずは、目的を明確化することが SRE 実現に向けた第一歩です。自社の現状課題を整理し、目指すべき理想の姿をイメージして、 SRE によって何を実現したいのかを明確にしてください。目的が不明瞭な場合、プロジェクトの方向性が途中でブレてしまい、 SRE を効率的に進めることは難しいため、時間をかけて慎重に検討することが大切です。

Step.2 SRE チームの役割を決める

SRE の目的を明確化したら、次は SRE チームの役割を決めてください。 SRE を実現するために、具体的にどのような役割を担い、どのようなアクションを行うのか、チームを構築した後のことをイメージして、可能な限り具体的に検討することが大切です。また、将来的に SRE チームが連携しそうな社内部署との役割分担を事前に決めておくことで、 SRE が実行フェーズに移った時にプロジェクトを円滑に進められるようになります。

Step.3 SRE チームの必要人員を算出する

SRE チームの役割を決めた後は、何名ほどの人員が必要なのかを算出します。 SRE プロジェクトの全体計画を策定し、最終的に目指すべきゴールから逆算して、どのアクションに何人必要なのかを具体的に決めていきます。この時、各人が有しているスキルセットなども考慮しながら、 SRE チーム内での人材配置を検討することで、リソースの最適化に繋がり、 SRE の効果を最大化できます。

Step.4 SRE チームを編成する

SRE チームの必要人員を算出したら、いよいよチーム編成のフェーズに移ります。事前に決めたフォーメーションに沿って人材を配置し、 SRE を実践するための最終準備を進めてください。なお、 SRE チームに人員を渡した部署の目線では「貴重なリソースを取られた」とネガティブな思考に陥るリスクもあるため、このような事態を避けるために関係者と交渉し、事前に合意を得ておくことをおすすめします。

Step.5 SRE を運用しながら PDCA サイクルを回す

SRE チームを編成した後は、実際に SRE を運用し、自社の定めたゴール達成に向けてアクションを実行します。ただし、 SRE は一過性の取り組みではなく、何度も繰り返し行うことで精度が高まるため、一度実践しただけで満足せずに、継続的に PDCA サイクルを回すことが重要なポイントになります。この時、過去に実施した SRE の結果を次回に活かせるよう、気付きや反省点をチーム全員で共有できるような仕組みを検討してください。

昨今、多くの企業がプロジェクトチームを結成して SRE に取り組んでおり、自社の業務効率化や生産性向上を実現しています。本章では、 SRE チーム組成の具体的な事例をいくつかご紹介します。

dely 株式会社

レシピ動画プラットフォームの「クラシル」を展開する dely 社では、 2020 年末頃まで最大 2 人体制の少数チームで SRE を運用してきましたが、その後 SRE チームは 4 名にまで倍増し、新たな体制で SRE に取り組むことになりました。しかし、リソース不足は解消できたものの、 SRE チームとしての役割が不明瞭であり、チームとして機能するための仕組みが存在しない点が大きな課題となっていました。

そこで同社は、

  • チームミッションの再考
  • SRE チームにおける責任範囲・業務内容の明確化
  • 課題の洗い出しと優先順位の決定

などのアクションを実行し、 SRE チームが果たすべき役割や業務内容などを整理することで、効率的な SRE の実現に成功しました。

また、自社の運用負荷を計測して今後の改善に繋げたり、社内のステークホルダーに「 SRE 月報」を配信して SRE の認知度を高めたりするなど、自社の SRE をより良いものにするための様々なアクションを継続的に検討・実行しています。

株式会社 マネーフォワード

金融系の Web サービスを展開するマネーフォワード社では、自律した開発組織の実現を目的に SRE に取り組むことを決めました。しかし、プロジェクトを始めた直後は、適正に SRE を実践している組織は少なく、プロダクトチームの中で開発サイクルを完結できる状態ではありませんでした。

そして、このような状況に陥っている原因を考えたところ、社内に SRE の成功事例が少ないため、いきなり全体に浸透させることは難しいのではないかとの結論に至りました。そこで、アーリーアダプター(早期導入者)となってくれるチームを探し、スモールスタートで SRE を開始することで、他のチームが納得感を持って SRE に取り組むことができるようになり、結果としてプロジェクトの推進に繋がりました。

株式会社 クラシコム

EC サイト・メディアを運営しているクラシコム社も、社内で SRE チームを結成している企業の一つですが、同社の SRE チームは組織図の中に存在せず、プロジェクトやタスクの状況に応じて、対応可能なメンバーが都度アサインされる体制を構築している点が大きな特徴です。

同社では、 SRE 定例会を月 2 回から 4 回程度開催しており、 SRE チームのメンバーが意見交換や認識合わせを行う場として機能しています。また、課題が顕在化している場合はその場で実際にツールを開き、全員に画面共有しながら解決策を探るような動きを行っています。

このように、 SRE チームが継続的にアクションを実行した結果、アラートの信頼性が高まったり、トラブル発生時でも慌てることなく対応できるようになったりするなど、自社のシステム運用の効率化や生産性向上に繋がりました。

JCB(ジェーシービー) 株式会社

日本発のクレジットカードブランドとして有名な JCB でも、 SRE チームを構築して自社システムやアプリケーションの開発・運用を効率化しています。 SRE の発足当初は、プラットフォームチームから分化し、新規アプリケーションチームの構築をフォローする形でチーム運用が始まりました。

しかし、アプリケーションチームの人数増加に伴い、支援業務のボリュームも大きくなったため、運用ポリシーの策定や障害試験の計画などを円滑に進められない状況に陥りました。そこで、各チームの役割を分担し、 2 チーム体制で SRE を運用することで、効率的にプロジェクトを進めることが可能になりました。

株式会社 10X

小売業に特化したシステムである「 Stailer 」を提供している 10X 社では、開発メンバーの中でインフラに関する知見のある人がシステムの開発・運用を行っていました。しかし、事業の拡大とともにシステムの規模が大きくなり、担当者の負荷が大幅に増えたことを契機として、 SRE の導入に踏み切ったのです。

同社の SRE チームは、

  • モニタリング基盤の Datadog 化
  • インフラリソースの Terraform 化
  • デプロイの高速化
  • リリースフローの刷新

など、様々なアクションを検討・実行しています。

現状、 SRE チームとしては発展途上の状態にあるため、チーム内で直近 1 年間のロードマップを作成し、自社のシステム開発・運用をどのようにサポートしていくのか、 SRE チームをどのように拡大させるのか、など、前向きな議論を日々重ねており、自社のビジネス成長を実現するための不可欠な機能の一つとなっています。

最後に、前章でご説明した SRE チームの組成事例を踏まえて、 SRE チームの構築を成功させるためのポイントをいくつかご紹介します。自社で実践する際の参考になると思いますので、ぜひ内容をご確認ください。

スモールスタートで始める

マネーフォワード社の事例から読み取れる通り、 SRE チームの構築を成功させるためには、スモールスタートで始めることも有効な選択肢になります。まずは一部の部署で SRE を試験的に導入し、結果を残してから本格導入を検討してください。これにより、関係者に対して SRE のメリットや導入効果などを具体的に示せるため、社内からの協力を得られやすくなり、結果として SRE チームの構築を円滑に進めることが可能になります。

チームの結成前に役割・ミッションを明確化する

dely 社の事例から読み取れる通り、 SRE チームは「ただ作れば良い」というものではありません。 SRE チームとしてどのような役割を担うのか、どのようなミッションを行うのか、などを事前に明確化し、その内容をもとにチーム編成を検討することが大切です。これにより、 SRE チームのメンバー全員が共通認識のもとで SRE を推進できるようになり、プロジェクトを効率的に進めることが可能になります。

チーム内で密なコミュニケーションを行う

クラシコム社や 10X 社の事例を見ると、 SRE チーム内で定例会を継続的に開催したり、今後のロードマップについて議論したりするなど、日常的に密なコミュニケーションを取っていることが伺えます。このように、チーム内で常に情報共有を行い、各人の目線から課題解決に向けたアイデアが積極的に出てくるような環境を整備することが、 SRE チームの構築における重要なポイントの一つであると言えるでしょう。

本記事では、 SRE の基本や成果を出すための SRE チームの作り方、具体的なチーム組成の事例などを一挙にご紹介しました。

企業が SRE チームを結成することで、円滑に SRE を進めることが可能になり、自社の業務効率化や生産性向上などに大きく寄与します。この記事を読み返して、具体的なチームの作り方や成功させるためのポイントなどを理解しておきましょう。

当社はこれまでの多くのクラウド開発を支援してきた知見を活かし、クラウドを活用した内製化に取り組まれるお客様を全力でサポートします。以下のような課題をお持ちの方は、ぜひお気軽にご相談ください。

  • SRE を実現したい
  • 開発で生成 AI を活用したい
  • 生成 AI を活用したサービス開発をしたいが知見がない
  • クラウド活用を推進するための開発体制作りが進まない
  • 既存資産をどのようにクラウド移行するか検討する知見が不足している
  • 内製化するためのクラウド開発スキルを持った人材が不足している
  • コスト削減の実現方法に悩んでいる

貴社の状況に合わせて、体制づくり支援や開発計画支援、クラウド開発スキルアップ支援など、様々な支援メニューを提供しています。無料相談も可能なため、まずは問い合わせフォームからお気軽にご連絡いただければと思います。

本記事を参考にして、 SRE チームの構築および SRE の実践を検討してみてはいかがでしょうか?