ご覧いただきありがとうございます。
このページではGameWithのエンジニア採用にあたり、技術スタックや開発プロセス、社内カルチャーなどを紹介しています。
GameWithの採用情報ページも合わせてご覧ください
詳しく話を聞きたいという方は、是非Wantedly ページからカジュアル面談にお申し込みください。
GameWith エンジニアの採用面接ガイドも一読いただけると幸いです。
サーバサイド言語としては、主に PHP と Go を採用しています。
GameWithは FuelPHP というフレームワークを利用して開発されていますが、適切な粒度でのサービス分割、新規実装部分は Go+Vue.js にて実装するケースも増えています。
最近ではスマホアプリや一部の Web に Flutter を取り入れています。
- サーバサイド:PHP, Go, (Python, Node.js)
- フロントエンド:TypeScript, ES6, jQuery, Vue.js, Web Components, LESS...
- クライアントサイド: Swift, Kotlin, Flutter (Dart), Unity (C#)
- データベース:MySQL, Aurora, DocumentDB, DynamoDB
- システムモニタリング:New Relic, Firebase Performance Monitoring
- 分析基盤:BigQuery, Google Analytics 4, Google Data Studio
- テスト:Autify
- インフラ
- AWS(ALB, ECS Fargate, ElastiCache, S3, Lambda, CloudFront...)
- GCP(Firebase, Cloud Firestore, Cloud Functions, Vision AI...)
- Akamai(Image and Video Manager, Adaptive Media Delivery...)
- Terraform
PC(Web)
SP(Web)
https://play.google.com/store/apps/details?id=jp.gamewith.gamewith
- クライアントサイド: Unity (C#)
- サーバサイド:Go
- データベース:Aurora MySQL
- インフラ:
- AWS(ALB, ECS Fargate, S3, Lambda, CloudFront...)
- GS2(GameServiceService)主にユーザー管理系に利用
GameWithはさまざまなマイクロサービスや独自ライブラリなどで構成されています。
より良いサービスをユーザーに提供するためにシステムも日々進化していますが数が多いので一部を抜粋してご紹介します。
GameWith Developer Blog 「GameWithのリプレイスについて vol.2 〜Web Components を Vue で書いたら最高だった編〜」より。
GameWithの各種記事に書き込みできるコメントを管理するシステムです。
バックエンドは Go、フロントエンドは GameWithDesignSystem(Vue.js/TypeScript)を利用しています。
会員登録せずとも書き込みができる仕様になっているため、トラフィックの多いGameWithでもユーザーが快適に利用できるようにフロントエンドでの非同期描画や CDN の利用などの工夫をしています。
GameWith Developer Blog 「社内でFlutterを採用しアプリと管理画面を開発した話」より。
GameWithではフルリモートワークと裁量労働制を導入しています。
もちろん配属チームでの調整は必要ですが、柔軟な調整ができます。
保育園送り迎えのため 9 時〜 18 時勤務にしたり、朝が苦手で 12 時〜 21 時勤務など、さまざまなエンジニアが在籍しています。
通院のために開始時間を遅くしたり昼休憩を長くして、その分夜に長めに仕事をするという方もいます。
サービス開発部では約 25 名のメンバーが在籍しています。
事業に沿ったチームと、それを横断的にサポートするチームが存在します。
定期的に情報共有会を開催したり、一部のメンバーは複数のチームを兼務していたりとチーム間連携も活発に行われています。
ロールとしてはリーダー/ディレクター/エンジニアというメンバーでチームが構成されています。
開発チームの年齢は 26 歳〜 42 歳のレンジで構成されており、ボリュームゾーンは 30 代前半です。
攻略記事ライター出身やディレクター経験のあるエンジニアも在籍しており、さまざまな経歴を持つエンジニアが存在するのも特徴です。
育児中のエンジニアリーダーやマネージャー、女性エンジニア、外国籍エンジニアなども活躍しています。
チームごとにワークフローを決めて動いているため細かな違いがありますが、以下の部分は共通しています。
- 1週間を1スプリントとしたアジャイル開発
- 1日1回ビデオ通話による朝会(デイリースクラムのようなもの)を実施
また、チームや仕事内容によって度合いは変わりますが各事業部とも仕様の相談・調整を随時行っています。開発部が主体的にビジネス視点での改善や施策を提案しコミットすることを強く推奨しており、ビジネス側もそれを受け入れる風土があります。
コミュニケーションツールとして slack、 チームのタスク管理には ZenHub、ドキュメント管理には Notion を利用しており、フルリモートワーク体制でも滞りなく業務が遂行できるツールを積極的に導入しています。
ZenHubのカンバンボード
現在の月間リリース数は80前後。平均すると1日に4〜5回リリースが行われている計算になります。
GameWithではユーザに価値を素早く届けることを重視しており、ビッグバンリリースよりも小さなリリースを日常的に行うのが良しとされています。
月間5億PV、4500万UUが利用するサービスのため、自らリリースした施策への反応がすぐに返ってきます。
秒間リクエスト数まで意識をして設計や実装する必要があるため、エンジニアとしてのスキルが磨かれます。
2020年〜の巣ごもり需要により、ゲーム業界全体の市場規模が大きく伸長しています。
その中で攻略メディアビジネスも競争が激化しており、差別化やメディアとしてさらなる品質向上が重要になってきています。
そのため、いかに素早くユーザのニーズに応えられるようなサービスを提供し続けることができるかが今後の成長の鍵となります。
技術力だけでなく業界のトレンドやいま流行しているゲームについてのキャッチアップも同時に求められ、とても刺激的な環境です。
GameWithを開発するエンジニアにとって、少なくとも3つのステークホルダが存在すると考えています。
まず1つにゲームを楽しむエンドユーザーです。品質の高い情報をいち早くユーザーに届け、ユーザーのゲームプレイをより快適にすることが求められます。
次にゲームを売り出すパブリッシャーやデベロッパーです。発売されたゲームをより楽しんでもらうこと、ゲームの魅力をより多くのユーザーに届けることでさらなるゲーム業界の発展に寄与していきます。
最後にGameWithでゲームの記事を書くライターです。ダッシュボードを常に改善し続けることで彼らがより効率的に良い記事をリリースし続けることを目ざいます。
このような多様なステークホルダが満足するようにエンジニアリングの観点から最善を尽くしています。
コンテンツだけではなくサービスとして、より良い価値提供をユーザに行えるような組織体制を目指しています。
解像度高くサービスのことを理解しているエンジニアだからこそできる施策やシステム改善などを積極的に実現できるよう仕組みやカルチャーをつくっています。
数値分析によるファクトベースでの施策立案。
施策立案をする際には、どのKPIに対して影響があるかを考えます。実際にリリースしたあとに結果はどうだったかを振り返る場をつくるようにしています。
数値分析グループでは週次での定期レポーティング会を行っており、エンジニアもサービス全体の数値把握をおこなう機会があります。
2013年にGameWithがリリースされ、以来多くの機能開発を行ってきました。コードベースや組織の拡大に伴うスピード低下を避けるために課題をひとつずつクリアし、あらゆる面から効率向上のための取り組みをおこなっています。
- 機動的なペアプロ、モブワークの実践
- 設計・コード・セキュリティレビューの実施
- E2Eテスト自動化によるテスト工数圧縮
- 不要コードの削減
毎月おこなわれるサービス開発部の全体会のコンテンツのひとつとして、業務に対する個人のこだわりポイントを話してもらう業務アピール会というものを実施しています。
また、毎週金曜日の業務時間終了後に任意参加の社内LT会が開催されています。ここでは、最近気になった技術やトピックなどを自由に発表しています。
Slack上で ピアボーナスのシステムであるHeyTacoを採用しています。
これはタコスの絵文字で感謝を手軽に表現することでインセンティブを付与できるシステムです。
タコスを集めるとガチャを引くことができ、当たりが出ると iTunesカード もしくは GooglePlayカード をもらうことができます。
エンジニアのスキルアップの支援として以下の手当や取り組みを行っています
業務時間外に月10時間以上の取り組みをした場合に支給されます。
基本的にはアウトプットが残る形を推奨しています。
- コードがあるものは GitHub のリポジトリ公開
- 読書をしたものは内容のサマリをブログで公開
- etc…
GitHub の場合、スター数が一定以上の OSS に対して Issue の起票や PullRequest のマージを一定以上行うことによって支給されます。
ハードルが高い分、半年程度継続して手当が支給されます。
社内でテックブログ推進委員がおり、ブログ作成に不安がある人も安心して書くことができます。
ブログを記載することはエンジニアのスキル向上に役に立つと捉えており、業務時間を使ってブログ執筆も可能です。