天の月

ソフトウェア開発をしていく上での悩み, 考えたこと, 学びを書いてきます(たまに関係ない雑記も)

SREをはじめよう ―個人と組織による信頼性獲得への第一歩~ Forkwell Library#70に参加してきた

forkwell.connpass.com

会の概要

以下、イベントページから引用です。

第70回目では『SREをはじめよう ―個人と組織による信頼性獲得への第一歩』を取り上げます。
「SREとはどのようなものか」「SREになるには何をすればよいのか」「SREを導入するにはどのように始めればいいのか」「するべきこと、避けるべきこと」といった、SREにまつわるさまざまなトピックを幅広く解説されている一冊です。SREという技能/概念をゼロから学びたい人、SREを目指すエンジニア、またSREを組織に導入することを検討している、導入したけれど思ったより上手く行っていない組織や企業にとって、多くの発見のある書籍となっています。

会の様子

山口さんの講演

こういう本ではない

最初に、期待値を合わせるために以下のような本ではないという話がされました。

  • SREを実践している企業のエッセイ
  • SRE関連の演習問題集
  • SRE関連の関連技術のベストプラクティス集
翻訳の裏話

ページ数も少ないコンパクトな本だということですぐに翻訳はできたということですが、凝った文章表現が多かったり引用が多かったりしたこともあり、下調べやレビューなどに時間がかかったということでした。

著者の話

計算機科学を専攻していた方で、直近はSRE系の教育者として活動しているということでした。

また、usenixに寄稿をしていたり、SRE CONの創始者であり、SRE界隈にもかなり貢献をされている方だということでした。Googleで働いたことはないそうですが、Googleが提唱したSREの原点に対しても非常にリスペクトを持っているそうで、なるべくGoogleの定義を大切にしようという姿勢も見られるということでした。

第一部

基本的にはまずは第一部から読んでもらいたいということでした。
第一部ではSREとはなにか?という定義を一番最初にして、そこから話を展開してくため、ぜひ読んでほしいということです。また、3つの単語(信頼性/持続的/適切)がSREのkey pointだという話があり、その点もすごく示唆深いということでした。

ただし、すでにSREとして長く働いていて具体的な課題意識を持っているような人は第二部から読んでもいいということでした。

第二部

個人がSREになるために必要なテーマや、どういうキャリアパスを辿るとよいのか?その場合、前のキャリアに応じてどのようなスキルを身につける必要があるのか?という話が書かれているのがこの第二部だということでした。

また、最後(第7章)には、SREとして転職をしたいならどういうことに気をつけるとよいのか?という話があるそうで、ここは山口さん個人としても実践的だしかなり面白いなと思ったそうでした。(翻って、SREとして募集をする場合にはこういうことを見られているよ、というのもわかる)

他にも、Googleで決められているという50%ルールの話はSREの働き方として本当なのか?という話(実際は週ごとに50%ルールが守られることはあまりなく、長期的なスパンで見たときに50%ルールが守られている)が書いてあったりして、実際にSREとして活動している人は、自分たちの働き方はどんなモードであることが多いか?というふりかえりにも役立つだろうということでした。

第三部

最後は組織としてのSREの話が書いてあるそうで、ベストプラクティス的な要素はかなり薄くなる一方で、実際にインタビューをした結果SREが上手くいくための成功要因や失敗要因に関して記載があるのが非常に面白いということです。

また、最終的にはSREという組織自体がなくなると良いという話が書かれていたりするのも面白いポイントだということでした。

パネルディスカッション

講演のあとはパネルディスカッションがありました。以下、質問と回答を一問一答形式で記載していきます。

RoleとしてSREが存在してない組織で必要性をどのような軸で判断するのが良いのか?上層部がエンジニアリングに詳しくないなら必要性はどう伝えればいいのか?

後半に関しては書籍(13章)に書いてある。必要性に関しては、信頼性の話だったり収益(時間や評判)の観点から説明するのがよいと思う。

また、組織によってインフラチームのようなものはなくアプリケーションチームが全員マネージドサービスを使っているとかいう話であれば、SREの役割はチーム全体がどれだけプラクティスを実践できているのか?を見るほうがいいと考えている。

SREに向いている人は?

問題の深堀りが得意な人。また、技術の境界を引かない人にも向いていると思う。本にも付録Aがあるので、そこに書かれているアドバイスを読んでみるのも良いと思う。

SREの文化がなかった組織で始まるにあたって、プロジェクトチームに対して、SREのロールを与えられた人はプロジェクトチームに対してどのようなアプローチから始めるべきか?

プロジェクトチームというのが、事業会社でいう新しい機能立ち上げという意味であれば、それはまずオブザーバビリティの部分だったりスケーラビリティの問題への対応の話をするのが重要だと思う。

SREの職種が面白いと思えるポイントは?

他のロールでもSREみたいなことをやっている人は多くいると思う。ビジネス的な視点を持ちながら深く技術的な深堀りをするというのは面白いと思っている。

SREはどんな組織にも必要か?

スタートアップとかはいらないと思う。一方で、プラットフォームエンジニアリング的な部分は、大きなプロダクトを持っている会社では絶対に必要になってくると思う。

SREを導入するときに対立しやすい価値観はあったか?どう乗り越えるのか?

開発チーム/インフラチームがあって、インフラチームは開発チームのコードを一切触れないという状況を打開するためにSREを導入するとかは割とよくある。

あとは、「適切」な信頼性をどうやって握るのか?という部分は問題になりがちなので注意する必要がある。

会全体を通した感想

本の内容をざっくりと紹介するというだけではなく、山口さんの経験的な部分だったり個人的な所感に近い部分の話も多数聞けたのがすごくよかったです。

SREは自身が意識していない間に実践している人もいるという話は、特にそうだよなーと思いながら話を聞いていました。