「家族アルバム みてね(以下:みてね)」はユーザー数1500万人を突破し(※1)、写真・動画の月間アップロード枚数は2.7億枚に達しています(※2)。そんなみてねのインフラを支え、ユーザーと開発者の双方によりよい体験を提供するために全力を尽くしているのが、みてねプロダクト開発部 基盤開発グループ SREチームです。
今回インタビューに登場してもらったのは、基盤開発グループのマネージャーである清水(写真右)と、チームメンバーの伊東(写真左)。SREチームに焦点をあて、印象的だった担当業務や取り組むべき課題、目指す未来について聞きました。
※1:2022年8月現在
※2:2022年10月現在
みてねのSREチームの特徴は「◯◯もできる」メンバーが多いこと
──清水さんと伊東さんは、SREの前はインフラエンジニアとして働かれていたのでしょうか?
清水:自分は、約8年間勤めた前職ではプログラマーやインフラエンジニアとしての業務が多かったですが、2011年にミクシィ(現MIXI)に入社してからは、SNS「mixi」、モンスターストライク、みてねにエンジニアとして携わってきて、現職ではずっとSRE的な動き方をしてきました。
伊東:僕はネットワーク寄りのインフラエンジニアでした。
──他のチームメンバーはどうでしょう?SREやインフラエンジニアとしての経験があるエンジニアが多いのでしょうか。
清水:いや、そんなこともないですね。現在チームには自分含め6名のメンバーがいるのですが、サーバーサイド開発をしていたメンバーもいれば、データ解析基盤の構築や運用を得意としていたメンバーもいます。
──なるほど。何かメンバーに共通している点などはありますか?
伊東さん:運用業務だけでなく、開発もできるメンバーが多いことじゃないでしょうか。イベントなどで他社のエンジニアと話すと「みてねのSREは開発もされる方が多いんですね」と驚かれるので、意外と開発までやるSRE組織は少ないのかなと。
──みてねのように開発もやるSRE組織は珍しい…?
清水:SREチームを持っている組織は多いですが、その取組内容は組織によっていろいろです。
SREはGoogleが提唱し実践されてきたもので、Googleのプラクティスを取り入れるのが最適なケースも多くあるかもしれませんが、必ずしもすべてを取り入れる必要はなくて。自分たちの組織や課題に合うプラクティスを選んで、カスタマイズすればいいと思っています。そういった意味では、みてねのSREチームではSREのプラクティスを取り入れながら「自分でコードを書いて開発もする」という形を選択していますね。
──なるほど。みてねという組織に合ったプラクティスを選択し、実践しているんですね。チームメンバーの雰囲気についても教えてください。
清水:割と雑談が好きなメンバーが多いチームだと思います。毎週、レトロスペクティブという一週間に起きた出来事の振り返りの場を設けていて、その場はかなり盛り上がります。
──どんなことで盛り上がるのでしょうか?
清水:やることとしては、ホワイトボードツールに良い(GOOD)or 悪い(BAD)と事実(FACT)or 感情(EMO)の縦横軸を置き、今週起こった出来事についてみんなで付箋を貼っています。「やっと登壇資料が終わった」「みんなで食べた寿司が美味しかった」のような雑談的な内容も多く、ざっくばらんに話せる場になっていると思います。
──みなさんの和気あいあい感が伝わってきますね(笑)
サービスをよりよくするため、幅広い領域に立ち向かう
──普段の業務内容についても教えてください。
伊東:日々の運用面では、ユーザーさんが快適にアプリを使用できているかの指標となるデータのグラフを毎朝チェックしています。異常を検知したら原因を調査して、改善すべききものであれば対応します。
開発面では、インフラコスト削減やユーザビリティ向上など、SREのミッションに含まれるさまざまな目的を達成するための開発をおこないます。開発者体験を向上させるために、環境整備やツールの開発をすることも。ちなみに、最近ではユーザビリティ向上のためにサムネイル生成の倍速化に取り組みました。
──様々な改善を重ねられているんですね。取り組む施策を決める流れはどうなっていますか?
清水:取り組む施策を決める流れは、まず期初にチーム内で半年〜年単位での計画を立てます。それをプロダクトオーナーである笠原さんにお見せして、事業や組織全体が目指す方向性とブレがないことを確認します。承認を得たら計画をさらにブレイクダウンし、月ごとの取り組みを決定する、といった流れになっています。
もちろん期初に作った計画は精度が低いので、定期的に見直していきますが。
──SREチームには、新しい依頼がどんどん降ってきそうですよね。なかなか、期初の計画通りには進まなさそうです。
清水:そうですね。依頼だけでなく突発的な対応なども発生するので関わる業務の幅が広く、ある意味カオスな状況です(笑)
伊東:笠原さんからのSREチームへの要望もわりと抽象度が高いので、いろいろなチャレンジができているというか。比較的大きな指針を与えてもらって、その目標達成のために試行錯誤することが多いので、そういった意味でも業務の幅が定まってない感じがしますね。
──それは「SREならなんとかしてくれるはず」という、笠原さんからの信頼の表れなのかもしれませんね。
清水:直接そういうふうに言われたわけではないですが、信頼して任せてくださっているのかなと感じることはありますね。
裁量が大きく“HOW”を思考する面白さがある
──普段の業務内容などについてお聞きしましたが、これまで関わった業務で印象に残っているものはありますか?
伊東:僕は、みてねのアプリで動画を再生する時に、動画をユーザーさんの手元に配信するための仕組みを刷新したことが印象に残っています。ほぼ2人のチームで設計から基盤の開発まで大量のコードを書き、1年ほどかけてようやく導入できたので、すごく印象深いです。
──長い時間をかけて取り組んだからこそ、印象に残っているのでしょうか?
伊東:それもありますが、とてもチャレンジングな課題だったのでリターンも大きくて。結果的にかなりのコスト削減につながり、実現できた時はすごく嬉しかったです。
──試行錯誤した結果大きなリターンが得られると、苦労した甲斐がありますね。清水さんはいかがでしょう?
清水:今から2年以上前に完了していますが、みてねのインフラのコンテナ移行に関わったのが一番印象深いです。現在のインフラは、リリース後の3年ほどの間で作られたものとは全くの別物になっています。以前はEC2を中心に使い、サーバー(VM)の中でそのままみてねのアプリケーションを動かしていました。現在はコンテナ技術を使ったものに刷新しています。
2、3年かけて取り組み、さまざまな苦労を経て実現できたので、特に印象に残っています。
──サービス全体を支えるインフラの刷新…気が遠くなりそうです。プロダクトへの影響もすごく大きかったのでは?
清水:間違いなく大きかったです。刷新したことでできることも増えましたし、いろいろな負債が解消されました。いつ終わるの?という上からのプレッシャーを感じつつ、大変なんですよ・・と説明したりして(笑)なんとかやり遂げました。
──影響範囲が広すぎて、一筋縄ではいかないですよね(笑)お話を聞いていると、SREの業務は事業への大きな影響を及ぼすものが多いと感じました。おふたりは、そういった影響力の大きさに面白みを感じているのでしょうか?
清水:大きなリターンが得られることはもちろん嬉しいですが、技術者としては、新しい技術に触れる楽しさも大きいです。新しいものが常に正解というわけではないですが、ある程度仮説をもって新しい技術の活用にチャレンジし、実際に効果が得られたら最高に楽しいですね。
伊東さん:裁量大きくいろいろなことに挑戦できるのも楽しいです。ひとつの目標に向かって、さまざまな手法から最適なものを選び、実現方法を考える裁量があるのは個人的に面白いと感じている部分です。
清水:“HOW”を自分たちで考える楽しさがありますよね。
──自分たちで解決策を考え、技術を選択できる裁量があるんですね。
「海外ユーザー体験の可視化」がさらなる海外展開の鍵に
──現在抱えている課題や、これから取り組んでいきたいことについて教えてください。
伊東:写真・動画などのメディアのストレージコスト増加と、DBの肥大化による負荷増大が顕著になってきています。これは、ユーザー数の増加にともない、写真・動画などのアップロード数が日々増えていることが要因です。
僕たちとしては、今後も無料・無制限で、写真や動画を気軽にアップロードできる環境を維持していきたいですが、サービスを存続していくためにはコストとのバランスを取る必要があります。
どちらも難しい課題ではありますが、サービスの成長には必ずつきまとうものなので、解決方法を模索していきたいです。
──サービスの成長は喜ばしいけれど、それに伴う課題も大きいというジレンマを抱えているんですね。清水さんも、これから取り組みたいことを教えていただけますか。
清水:海外ユーザー体験の可視化に取り組んでいきたいです。現在みてね全体で、さらに海外展開を盛り上げていこうという雰囲気があり、SREとしては海外ユーザー体験の向上に貢献できると思っています。具体的なアクションを決めるための第一歩として、まずは体験の良し悪しを可視化する必要があるんじゃないかと。APIレベルでの可視化はできているのでその先を目指したいです。
伊東:海外のユーザーさんが、実際にどのような体験をしているのかを可視化するのは本当に難しいんです。極論、自分で飛行機に乗って見に行かないと分からない。その状況をなんとか打破したいので、サービスやツールを上手く活用し、日本にいながら海外と同じ体験を得ることを技術の力で可能にしていきたいです。
──日本と同じ水準の体験を、世界にも広げていきたいですね。
清水:全世界のユーザーさんに、ストレス無くみてねを使ってもらえる未来を目指したいですね。
目指すのはさらに強い開発組織、そして「写真・動画共有サービス」を超える未来
──最後に、おふたりの目指す未来について教えてください。
清水:SREの持つ知識を組織全体に共有していくことで、みてねの開発組織をさらに強いチームにしていきたいです。
みてねの開発組織はどんどんスケールしていますが、SREは6人でやれることが限られています。僕たちがボトルネックで開発が遅れるなんてことにならないよう、プラクティスの推進やナレッジシェアを進め、SREに依頼や相談をしなくても解決できる組織にしていきたいです。
あとは、引き続き心地良い開発体験も作っていきたいです。みてねのメンバーは作りたいもの、やりたいことのアイディアを豊富に持っています。その一つ一つを効率的に実現するために、ストレスが少なく、気持ちよく開発できる環境を作り上げたいです。
──さまざまな側面からみてねの開発組織を支え、強くしていきたいと。伊東さんはいかがでしょう?
伊東:笠原さんがよくおっしゃっているメッセージで、現在みてねを使っている子ども達が大人になった時、自分の子どもの頃の思い出を振り返ることができたら良いよね、といったニュアンスのものがあって。僕はそのメッセージにすごく共感しているので、そういう未来を創っていきたいと考えています。
現実的な視点では、事業の成功を阻害しないよう、インフラのコストを最小限に抑えつつ、快適なユーザー体験の提供を両立させていきたいです。難しい課題ではありますが、そこをいい塩梅で実現させるのが僕らの腕の見せどころかなと思います。
──実家に帰って昔のアルバムを見るという行為が、みてねに置き換わる未来を想像すると面白いですね。
伊東:今の子どもたち世代でサービスが終了してしまうと、単なる写真・動画の共有サービスで終わってしまう気がしていて。さらにその先を目指したいという思いがあるので、コスト削減や負荷の増大といった課題と戦い続けていきたいですね。
──何世代にもわたって、みてねに家族の思い出が残っていくと考えるとワクワクしますね。ありがとうございました!
面白い!この記事、とても役に立つ情報がいっぱいですね。 drive mad