1分で分かる!SREとは?
ジャバ―ド先生…。たすけて…。
ことりん君、今日も困ってるね!どうしたの??
たぬきさんとこの開発チームと運用チームがケンカした話覚えているかな??
あぁ、DevOpsについて教えてあげたやつだよね?その後どう??解決したかな?
いや、それがね、なぜかあの頃より対立が激化しちゃってるみたいなんだ…。それでよく思い出してみたんだけど、この前ジャバ―ド先生にDevOps教えてもらったあと、たぬきさんにDevOpsのこと教えるの忘れてたんだよね…。
なるほど。それでさらに深刻な事態になっているというわけだね。
何か良い方法はないかなぁ??DevOpsってやつで解決できるかな?
DevOpsって概念的なものなんだよね。つまり、具体的なアクションじゃなくて「こうしたほうがいいよ」っていうものだから、なかなか時間がかかるかもしれないね。
うぅ…。ちょっとだけ罪悪感…。
ことりん君!いいやつがある!たぬきさんにSREってやつを教えてあげると良いかもしれないよ!
エスアールイー??
そうそう。SREっていうのはSite Reliability Engineering(サイトリライアビリティエンジニアリング)の略だよ。日本語でサイト信頼性エンジニアリングって呼ばれることもあるんだ。
り、リライアビリティ…噛みそう…。そのSREってのは何なの??
ちょっと難しんだけど、とっても簡単に言うと「Webサイトの信頼性と価値を向上させる考え方や方法論」のことを指すんだ。
ちょっと待って!!ジャバ―ド先生!!全然簡単じゃない!!
1つずつ説明するね。SREっていうのを最初に生み出したのは、あのGoogleなんだ。Googleも他のIT企業と同じように、開発チームと運用チームが別組織として動くことによる弊害を感じていたんだ。このあたりはDevOpsでも話したよね?
うん!見ているところが違うって話だよね?
そうそう。でも、やっぱりそれはサービスの価値を考えたときには、あるべき姿とは言えないんだ。だから「開発チーム」と「運用チーム」をつなぐSREっていう考えを導入したんだ。
ふむふむ。
SREを対応するチームは、開発チームのようにサービスの開発も担当するし、サービスの安定稼働のために運用作業も担当するんだよ。
サービスが安定的に稼働していない時期は、開発の手をとめて安定稼働のための運用作業、具体的には運用作業の自動化だったり、効率化を行うんだ。その反対にサービスが安定稼働していれば、開発チームと同じようにサービスを開発するんだよ。
開発チームと運用チームの間でどっちの作業も行うバランスをとるチームって感じ??
そうだね。そのイメージであってるよ!ただ、SREを担当するエンジニアは、開発に対しても運用に対しても高いレベルが求められるから、ハイスキルな人材じゃないとなかなか務まらないんだ。
確かにSREチームをつくれば、たぬきさんとこの開発チームと運用チームも上手くいきそうな気がする!!でも、SREを任せる人材を探すのは大変そうだね…。
IT人材で困ったらLeINに相談してみよう!
SREとは?採用に役立つSREの基礎知識
SREとは、サービスの信頼性を向上し運用コストを下げることで、システムとエンジニアが行う作業の価値を高める考え方のことです。このSREは、Googleが長年かけてまとめたサービス開発・運用のベストプラクティスのようなものです。
SREは、サービスに対して、その時すべきことは何かを考え、よりビジネス的な価値を創出するための取り組みです。サービス安定稼働に至っていない場合は、できるだけ運用の手間を削減するために自動化などを率先して対応します。これにより、運用作業の負荷は軽減され、サービスをより安定的に稼働させることができるようになります。
サービスが安定的に稼働している段階では、次々に新機能を開発することがビジネス的な価値に直結します。そのため、SREチームも積極的に機能の開発を行うのです。
SREを担当するエンジニアの特徴と在籍業界
SREを担当するエンジニアは、開発作業も運用作業も担当するため、さまざまなスキルを高レベルで対応できる必要があります。具体的には下記のようなスキルが必要といわれています。
- プログラミングスキル
- インフラに関するスキル
- クラウドに関するスキル
- セキュリティに関するスキル
SREを担当するエンジニアが在籍する業界としては、Web業界、スマートフォンアプリ業界などです。最先端技術を好み、業界全体のビジネスに関するスピードが速いという特徴があります。
採用する時に知っておくとよいこと
SREを担当できるエンジニアは希少?
日本では、ようやくWeb業界を中心にSREというものが普及しつつあります。ただし、IT業界全体でみると、SREといった考えを導入している企業はまだまだ少数派です。そのため、SREを担当できるエンジニアの絶対数も少ないといえます。
ただ、そのような状況であるため、企業側もある程度自社での育成を視野に入れているケースもあります。その場合は、インフラエンジニアやWebエンジニアなどというように採用のパイは広がるでしょう。
求人のポイント
求人を作成する時は、下記の内容を求人に入れるとよいです。
1システム(サービス)の詳細
※特にそのシステム(サービス)をなぜ作っているのかを熱量をもって記載する。
2開発環境
3現在のエンジニア組織の体制
4現行システムの課題と募集の背景
5求められる業務と期待値
6エンジニアとしてのスキルアップ支援制度の有無と詳細
7エンジニアチーム内での相互成長のための仕組み(勉強会やLT会など)の有無と詳細
8選考フロー
9待遇
10キャリアパス
SREの豆知識
SREを導入している有名な企業・サービス
メルカリ
日本のテック業界をリードしているメルカリですが、2015年にSREチームを立ち上げています。メルカリのSREチームは大きな役割を果たしているものの、課題も明らかとなってきたため、さまざまな方法で改善を重ねています。
https://engineering.mercari.com/blog/entry/20210129-embedded-sre/
サイボウズ
最近はCMで見かけることも多いサイボウズですが、こちらは2016年にSREチームが発足しています。ユニークな取り組みでも有名な同社ですが、こういったサービスに直結する事項へのアクションの速さは目を見張るものがあります。
https://blog.cybozu.io/entry/2016/09/01/080000
JCB
日本を代表する金融機関の1つであるJCBは、2021年4月にSREチームが発足したとのことです。IT企業ではなく、事業会社にもその波がやってきていることを実感します。
https://cloud.google.com/blog/ja/topics/customers/jcb-building-next-generation-fin-platform