スタディサプリ BRAND SITE

SRESRE

教育サービスを改革する自己完結型チームを実現するSRE募集!

SRE は、日本、インドネシア、フィリピンでさらに拡大を続ける Quipper プロダクトを利用した学習サービス(Quipper Video, Quipper School, スタディサプリ小・中・高校講座、大学受験講座)の安定性、信頼性、高い開発体験による自己完結型の開発チームを、開発チームと協力しながら作っていくことをミッションとして組織されています。その業務内容は、インフラの構築、監視、障害対応だけではなく、特にパブリッククラウドとSaaSの活用、自動化、OSSの活用、そしてそれらのシステムが現状の組織において半ば自動的に機能するような状態を目指しています。

業務内容

・パブリッククラウドとSaaSの活用

  • ・スタディサプリは、現在は AWS と GCP 上に構築されています
  • ・サービスとしてコアでない部分については SaaS を積極的に活用しています
  •  ・監視に Datadog, メールに Sendgrid, エラー管理に Sentry など
    ・Infrastructure as Code (コード化、自動化)
  • ・インフラの構築は可能な限り Terraform, Ansible などのツールを利用してコード化、自動化しています
    ・OSS の活用
  • ・Kubernetes, Envoy, Argo CD, Ruby, Ruby on Rails, Go, gRPC, PostgreSQL, MongoDB, fluentd, など Quipper のサービスは多くの OSS に支えられています
  • ・OSS を利用するだけではなく、必要に応じて issue 報告や、プラグインの作成など積極的に関わっていくことを推奨します
    ・コードを書く
  • ・コードを書かずに既存のソリューションを利用する方が合理的であればそうしますし、自分たちで作る方が合理的なのであればそうします

具体的には、以下のような課題に関して具体的なイメージをチームメンバーや開発チームとともに作り上げ、実装・展開していくこと。

・開発チームと共にSite Reliability Engineeringの思想やスキルを学んで、より良いプロダクト開発のあり方を探るためのプログラムの作成
・GitOpsツール等によりCI/CDパイプラインを最適化し、開発体験を向上する仕組み
・AWS等のクラウドリソースのセルフサービス化のための仕組み
・サービスの成長や季節性に合わせた柔軟なスケーリングを行うためのプランニングおよびオートスケーリングの適用
・Cluster/Podのオートスケーリングによるスケーリングの簡易化・自動化
・EnvoyやOpenTelemetry等によるObservability基盤
・Istio/Envoy等を活用した、Circuit BreakerやRate Limiting等のMicroservicesの安定化を促す機構を簡単に利用できる仕組み
・Jenkins等のジョブ実行基盤を現在の組織の形に合わせたCloud Nativeな形への段階的移行
・Telepresence等を用いて、効率的にKubernetes上でアプリケーション開発を行うための仕組み
・Prometheus Exporter等を用いた、言語やフレームワークごとの共通のメトリクスを簡単に収集できるような仕組み
・複数アプリケーション横断でログを検索するためのログフォーマットの整備、ライブラリ
・Savings PlansやSpotinst等の活用によるリソースとコストの最適化

ポジションの魅力

現在、モノリシックなアーキテクチャからマイクロサービスへの段階的な移行を進めています。これは技術的な問題だけではなく、組織的な課題でもあり、プロダクト開発をもっと前に進め、より良い教育のあり方を探っていくための問題です。DevOps/SREの様々なプラクティスの重要性が、実感を込めて感じられる状況になっています。

マイクロサービスへの移行にあたって、現状SREを含めた広い意味での開発組織全体の大きな課題が、「自己完結化」です。同じサービスを複数のチームで共有してしまっているため、機能のリリースには複雑な調整が必要になります。また、新規サービスの作成においても、例えば必要なインフラのセットアップにSREとの調整が必要であったりと、必要なスピードが出せない状況になってきました。

そこを打破するのが「自己完結化」です。各チームがそれぞれの責任範囲に応じてサービスを持つことができれば、調整のコストを限りなくゼロに近づけ、自分たちが必要な機能開発のサイクルを、低コストで何度も繰り返すことができますし、それを通じてより正しいプロダクトが作っていけるはずです。

また、インフラレイヤにおける技術選定も開発チーム内で行えるようになれば、必要な機能に対して最適な選択肢を素早く検証することができ、そうやって培ったインフラへの知見が、それまでとは全く違った機能のあり方を浮かび上がらせることだってあるかもしれません。そんな組織において求められるSREチームのあり方は、依頼をただこなすのではなく、開発組織をエンパワーすることを通じて、プロダクトをより良いものにしていくことではないでしょうか。

マイクロサービスへの移行にせよ、チームの自己完結化にせよ、これらの課題は明確な終わりがないものですし、問題のボトルネックは常に移り変わるものです。モノリスから切り出したマイクロサービスがまたモノリスになって、そこからまた切り出しが必要になる、という状況だって起こってくるかもしれません。

そんな中でできることは、日々開発チームやチームメンバーとの対話を通じて課題を設定し、そこへのゴールを一度明確にし、一つ一つやっていくしかありません。しかし、一つ課題をクリアすると、また別の課題が見えてくるものです。それでも、そこから生み出されるソフトウェアや、ユーザーに届いた価値、そしてそれを実現するために成長した自分やチームというのはきっとそこにあるものなのかもしれません。

チームのVision / Mission / Values

Vision
最高の学習プロダクトを作り続けられる開発組織の実現

Mission
自己完結チームがプロダクトを素早く安全に届け続けるためのプラットフォームと文化を作る

Values
・Fail smart: 失敗を非難せず、学習の糧とする。また、影響範囲をコントロールし、最小のリスクから最大のリターンを得られるよう、プロセスに失敗を織り込む。
・Learning: 未知の課題を発見・解決するために、あらゆる物事を学習の機会と捉え、必要な変化をし続ける。
・Borderless: 組織の垣根なくコミュニケーションし、協力しあうことでより大きな成果を目指す。
・Metrics-driven: あらゆる課題・物事を指標化し、問題を点ではなく線で捉え、柔軟かつ自動的な解決を目指す。

応募条件

SRE としてご入社頂く方には、スタディサプリのサーバ構成・アーキテクチャ・開発チームの課題・プロダクトとして解決したい課題を理解し、組織の成長・変化に合わせて絶えず進化させていけるよう、または開発チームが自律的に開発のライフサイクルを回していけるよう、問題解決に向けた提案や対話を通し、実装からそれらが広がっていくための仕組み作りまで主体的に行っていけるようになることを期待します。

その後は、ご志向やパフォーマンスに応じて、他メンバーの育成、教育やエンジニアリングマネージャーを目指していただく事も可能です。

[必須条件]
・AWS 等のパブリッククラウド上で構成管理ツールによる Infrastructure as Code 等を通じた自動化の仕組みの運用の経験がある
・Web アプリケーションの運用経験がある
・シェルスクリプト以外のプログラミング言語を書いた経験がある(Go言語、Ruby、Pythonなど) 
・Docker を始めとしたコンテナ関連技術の利用経験
・「Distributors of Wisdom」、「知の流通革命」を実現する、というミッションへの共感、エンジニアリングのスタイルに共感できること
・プロダクト開発など、SREに閉じない業務において、それぞれの関係者と対話的なコミュニケーションを行うことで、より良いものを作っていける方
・日本語が母語でない場合はN2相当の言語能力をお持ちの方

[歓迎条件]
・DevOpsを実践するチームで働き、Dev/Ops両方の観点からプロダクトの開発を行った経験がある
・SLI/SLOを決めたり、それらをレビューする文化を作ってきたことがある
・CI/CDパイプラインの構築や、開発環境の共通化を通してDeveloper Experienceの改善をした経験がある
・組織・技術の両面からアーキテクチャを考え、実装し、進化させてきた経験がある
・Microservicesのような分散システムを安定的に稼働・運用させるためのノウハウを持っている
・Logging, Tracing, Metrics等Observabilityを確保するための基盤を構築した経験がある
・自社サービスのクラウドに特化した設計の経験がある
・RDBMS/KVS/列指向DB等、複数のデータベースの中から、求められる要件や特性に応じて適切な選択ができる
・分析基盤の構築経験がある
・RubyやGoでのプログラミング経験がある
・英語によるコミュニケーションスキルがある、または磨きたい

利用技術/ツール

・データベース: MongoDB, Amazon Aurora (PostgreSQL/MySQL), BigQuery, Treasure Data
・インフラ: AWS, GCP, Kubernetes, CircleCI
・モニタリング: Datadog, NewRelic, Pingdom, Sentry, Google Cloud Logging
・コミュニケーション: GitHub, Slack

想定年収

659万〜1,095万(固定残業代含む)
※これまでのご経験・スキル・能力を踏まえて決定いたします。

勤務時間

フレックスタイム制度(コアタイム無し)
※試用期間は、標準労働時間を10:00~19:00 とする

休日休暇

145日(土日祝日+会社指定休+個々人が設定する休日)
働く日と休む日を自身で選択し、メリハリのある働き方を目指しています。

待遇/福利厚生

・社会保険完備
雇用保険、労災保険、健康保険(介護保険)、厚生年金保険に加入
・各種手当
出産育児休暇:子が12歳まで40日取得可能。
ケア休暇:5日/年取得可能。介護認定不要。ペット可。
STEP休暇:勤続3年ごとに取得権利が発生。7日〜28日間取得可能。
・その他
国内外カンファレンスへの参加、技術書購入、資格取得、社外勉強会参加、GLOBIS学び放題など
スキルアップに繋がるものは様々支援しています。

応募する