Upgrade to Pro — share decks privately, control downloads, hide ads and more …

新規ゲームのリリース(開発)前からのSRE活動

 新規ゲームのリリース(開発)前からのSRE活動

SRE Next 2022 発表資料です

B276b9088550bc522536ab9d471aeebe?s=128

Tomohiro Koike

May 18, 2022
Tweet

More Decks by Tomohiro Koike

Other Decks in Technology

Transcript

  1. 新規ゲームのリリース(開発)前 からのSRE活動 2022/05/15 株式会社ミクシィ 小池知裕

  2. 自己紹介 • 小池 知裕 • 株式会社ミクシィ 開発本部 CTO室 SREグループ •

    2008年中途入社 • ミクシィでやってきたこと • mixi.jp の開発・運用 • モンスターストライクの開発・運用 • 新規ゲーム開発での技術的な支援 • 全社横断での技術サポート などなど.. 2
  3. アジェンダ 1. はじめに 2. SRE グループの紹介 3. リリース(開発)前の新規ゲームに対する技術支援 4. 新規ゲームのリリース(開発)前に注意するポイント

    5. まとめ 6. おわりに 3
  4. はじめに 4

  5. はじめに • 本セッションでは私たちが新規ゲームアプリ向けに「リ リース(開発)前であってもリリース後に安定したサービスを 提供する」ために行っている支援やあらかじめ考慮してお くと良いポイントの事例をご紹介・解説します。 5

  6. 聞いた人が得られるもの • 新規ゲーム開発時に考慮するべき項目・観点 • リリース前(開発時)でのSRE の関わり方の事例 6

  7. SRE グループの紹介 7

  8. SRE グループの紹介 • 2019年5月に発足 • メンバー: 12名(2022年4月現在) • 得意分野は様々 •

    ミクシィに新卒入社したメンバーや中途入社のメンバー • アプリケーションエンジニアやインフラエンジニア • Android開発などを経験したメンバーも • 組織自体はフラットな組織 • マネージャ1名+メンバー11名 • 課題を自ら見つけそれを解決して成果を出していく 8
  9. SRE グループの紹介 • SRE グループの方針・ミッション • 注力事業におけるサービスの信頼性向上のための行動 • サービス運用における効率化と自動化、WF改善 •

    破壊と安定を繰り返し安定運用のための行動を取り続ける • 各事業横断で、ノウハウを最も持つ組織 9
  10. SRE とは 10

  11. SRE とは • SRE とは • 「SRE は、信頼性の高い本番環境システムを実行するための職務、 マインドセット、エンジニアリング手法のセットです」(Google Cloud

    - サイト信頼性エンジニアリング(SRE)より) 11
  12. SRE とは • それでは「本番環境システム」が存在しないサービスに対 してはSRE はやることがないのでしょうか? 12

  13. SRE とは • 私たちはそうではないと考えています • リリース前の開発であっても将来を見越した支援活動でリ リース後のトラブルや運用コストを事前に避け、信頼性の 向上を望めると考えます 13

  14. 新規ゲーム開発時の課題 14

  15. 新規ゲーム開発時の課題 • なるべく素早く(少ないコストで)開発したい • ゲームの機能要件以外で必要なものは何? • リリースまでに準備するものは何? • リリース後に大幅な構成変更や刷新は困難 15

  16. 新規ゲーム開発時の課題 • これらの課題を解決するために新規開発のセットアップリ ストとして必要な項目を整理したリストを作成 • プロジェクト支援時に活用しています 16

  17. 新規ゲーム開発時での支援 • 新規ゲーム開発を主管する部署と前述のセットアップリス トを使って一つずつ各項目を整理していきます • 「決定してる(決定していること)」 • 「検討中(いつまでに決定する)」 • 「検討してない(いつまでに検討する)」

    17
  18. リリース(開発)前に注意するポイント セットアップリストの一部をご紹介 18

  19. リリース(開発)前に注意するポイント • 「新規開発セットアップリスト」の中から本セッションで は抜粋して3点ご説明します 19

  20. リリース(開発)前に注意するポイント(リポジトリ) • 開発用リポジトリの運用・使い方の検討、決定 • モノレポ or 用途ごとでそれぞれ準備 • 運用方法やポリシー •

    画像やアセットなどサイズの大きなファイルを入れる場 合考慮が必要 • GitHubを利用する場合制限がある場合も • 1ファイル100MBまで • 1リポジトリ 10GBまで • 最悪リポジトリの作り直しのケースも 20
  21. リリース(開発)前に注意するポイント(ログ) • ログは非常に重要 • リリース後のKPI分析のベースにもなる • トラブル時の手がかりにもなります • 構造化ログフォーマットで出力するなど 21

  22. リリース(開発)前に注意するポイント(ログ) • ログ(的なもの)の運用方法・ポリシー • 必須の項目はあらかじめ決めておく • 「reason(理由)」は重要 • 例) •

    なぜユーザにこのアイテムを付与したのか • なぜこのレスポンスを返したのか • 時刻のフォーマットはしつこいくらい徹底 • ISO 8601なのかUnix Timestamp なのか 22
  23. リリース(開発)前に注意するポイント(ウェブサイト) • ウェブサイト(静的なサイト) • リリース前に必要になることも多い • PF審査の際に必要になる • プライバシーポリシー •

    利用規約 • なるべくコストを抑えて構築する • リリース前にティザーサイトを公開する場合も • ドメインなどの手配・確保 23
  24. リリース(開発)前に注意するポイント(ウェブサイト) • mixi developers blogでの以下記事を参照 • 公式サイトを量産するために、terraform generator を作成し た話

    24
  25. まとめ 25

  26. まとめ • リリース前であっても将来を見据えて安定運用のために事 前に準備や検討をしておくことは重要 • 安定運用のためのチェックリストはSite Reliability Engineering(SRE)のノウハウを活かせる 26

  27. おわりに 27

  28. おわりに • 本セッションの内容をほんの少しでも参考にしていただき リリース(開発)前であってもSREの手法を実践し「SRE DIVERSITY」を実現、皆様がハッピーになっていくことを 祈っています 28

  29. ご清聴ありがとうございました 29

  30. We Are Hiring! SREの募集一覧
 ミクシィ 採用
 SRE求人3件、サーバーサイド求人10件!
 ミクシィグループでは、
 SREの皆さんのご応募をお待ちしています
 家族アルバム

    みてね 言語:Ruby モンスターストライク 言語:Ruby、Go 事業横断の開発本部 では、 通常の中途採用に加えて第二新卒採用も実施中! 言語:Go、Ruby、Elixirなど 採用サイト