求人ID: 32573
応相談
システムの設計、開発、運用に関わる業務を担当いただきます。
我々の役割は、ゲーム制作チームと連携しながらシステムを構築し、ユーザーを盛り上げる施策をシステム面で支えることです。
新しい事にチャレンジしたい方や、日々めまぐるしく変わる幅広い技術スタックに一緒に挑戦していただけるエンジニアを求めています。
<具体的な業務内容>
・独自ブロックチェーンの保守、運用
・Webアプリケーション開発、API開発
・ゲームタイトル横断の基盤システムの開発全般(決済システムやゲーム内ポイントシステムなど)
・全社共通のデータ分析システムのETL/データパイプラインの設計、開発、保守運用
・各種イベントやキャンペーンを支援するバックエンドシステムの開発全般
・NFTマーケットプレイス『リセラ(Resella)』の開発
<開発環境>
・言語:PHP, MySQL, Go, Python
・インフラ:Amazon Web Service(EC2, Aurora など), Google Cloud Platform(Kubernetes Engine, AppEngine, Cloud Run, Spanner, BigQuery, Dataflow, Pub/Sub その他色々)
1) レンダリングエンジニア
PC・ゲーム機向けハイエンドゲームにおける、描画プログラムの設計・実装・最適化
2) システムプログラマー
PC・ゲーム機向けハイエンドゲームにおける、システムプログラム
3) エフェクトプログラマー
PC・ゲーム機向けハイエンドゲームにおける、エフェクトプログラム
4) ネットワークプログラマー
PC・ゲーム機向けハイエンドゲームにおける、ネットワークプログラム
5) サーバプログラマー
PC・ゲーム機向けハイエンドゲームにおける、サーバサイドアプリケーションの設計
及びプログラム
6) テクニカルアーティスト/ツールプログラマー
アーティストやプランナーと連携して、ゲーム開発に必要なツール作成および
アセットパイプラインの構築を行う
業務内容
【概要】
当社では現在、2つの新規プロジェクトがあり、クライアントエンジニア合計15名が注力して開発しています。その両方で利用されるクライアント共通基盤を開発する専属チームのコアメンバーを募集します。
このポジションのミッションは、各タイトルのクライアントエンジニアがインゲームを中心とした面白いコンテンツ開発に注力できる環境を作ることです。
そのために、複数のタイトルで横断的に利用される共通機能、堅牢なクライアントアーキテクチャ、そして開発ルールやワークフローの整備をリードしていただきます。この役割を通じて、各タイトルの開発効率と品質を底上げし、会社全体の技術力を牽引することが期待されます。
【想定業務】
コンテンツを跨いで利用する共通機能の開発、導入サポート
開発支援ツールの開発、各種自動化のためのワークフローの構築・改善
CI/CD環境の保守・改善
Unity、SDK、外部パッケージなどの利用している技術のアップデート対応
課金、通知、外部アカウント連携などの非ゲーム機能の開発
パフォーマンスチューニング
その他プロジェクトの中長期的な技術的課題への対応
やりがい・魅力
本ポジションの魅力
まだ専任の基盤チームが立ち上がったばかりのため、一部のエンジニアがコンテンツ開発と基盤整備の両方を担っているのが現状です。 結果として、それぞれの領域でスピードとクオリティを最大限に高めきれていない、という課題が生まれています。
この兼務状態を解消し、あなた自身も含めすべてのエンジニアが自身の専門領域で最高のパフォーマンスを発揮できる環境を整えること。それこそが、今回募集するあなたの最も重要なミッションです。
今後さらに立ち上がる新規プロジェクトでの利用も視野に入れ、基盤の運用・改善を継続的に行います。将来的には、ここで開発した基盤の一部をOSSとして公開していくことも計画しており、業界にインパクトを与えるようなチャレンジができます。
技術スタック
ゲームエンジン:Unity(Unity2022 or Unity6)
開発言語:C#、Python、ShellScript
IDE:Rider、VisualStudioCode
プロジェクト管理: Git、GitHub
CI/CD:(Declarative Pipeline、Groovy、Shared Library、Configuration as Code)
クラウド:AWS (EC2、S3、CodeCommit、Lambda、CloudFront)
Unity上の主要な使用技術:Addressables、CRIWare、Timeline、UniTask、VContainer、InputSystem、MessagePipe
応募要件
必須要件
C#またはC++を用いた3年以上のゲーム開発経験
クリーンアーキテクチャやレイヤードアーキテクチャへの理解
UniTaskを利用したC#非同期プログラミングの知識
パフォーマンスを意識したコーディング、およびメモリ・CPU最適化の経験
歓迎要件
スマートフォンゲームの運用経験
DIコンテナを用いた開発経験
Addressablesなどを利用したアセットバンドルの設計やアセットビルドパイプラインの開発経験
アプリ全体を見据えたエラーハンドリング(カスタム例外設計、復旧フローなど)の開発経験
UPMを利用したパッケージ開発・運用経験
iOS/Androidのネイティブ機能(課金、通知、外部連携など)の開発経験
このような方が活躍できます
自らの技術で、仲間であるエンジニアを支えることに情熱を注げる方
「面白いコンテンツ開発に注力できる環境を作ること」というミッションに共感し、チーム全体の成功を自分の喜びにできる方を求めています。
特定タイトルの機能開発だけでなく、アーキテクチャ設計やパフォーマンス最適化といった、ソフトウェアの「あるべき姿」を追求することが好きな方
目先の機能実装だけではなく、中長期的な視点で技術的負債や課題の解決に取り組むことにやりがいを感じる方を歓迎します。
「作って終わり」ではなく、長期的な運用を見据えた品質と堅牢性に強いこだわりを持つ方
前例のない表現や、複雑な仕様に対しても、実現する方法を粘り強く探し、ゲームのクオリティを一切妥協しない方を求めています。
まだ定まっていないルールやワークフローに対して、自ら課題を発見し、チームを巻き込みながら改善していくことを楽しめる方
指示を待つのではなく、主体的に行動し、開発環境をより良くしていく推進力に期待しています。
課題の本質を見極め、最適な技術を選定・実装できる方
前提や制約から問い直し、本質的な問題定義と解決に取り組める方を求めています。
モダンな技術トレンドを積極的に学び、実践の場で活かす意欲のある方
常に新しい知識をインプットし、チームに還元していく学習意欲の高い方と一緒に働きたいと考えています。
参考情報