※本記事は、DMM GAMESのプラットフォーム開発をテーマにした連載の第二弾です!
第一弾では、DMM GAMESプラットフォーム開発本部を紹介しています。未読の方はぜひ、合わせてチェックしてください!
第一弾:DMM GAMESプラットフォーム開発本部について
第二弾:ゲームプラットフォームのミッション遂行の秘策とは?
第三弾:プラットフォーム開発メンバーの働き方と環境(予定)
プラットフォームのディレクターとエンジニアの関わりかた
こんにちは! DMM.inside編集部です。
今回は、DMM GAMESのサービス基盤を支えるプラットフォームについて、エンジニアとディレクター職のそれぞれを牽引する二人の対談形式で紹介していきたいと思います。池上さん、関口さん、どうぞよろしくお願いします。
まず、お二人が所属する部署について教えてください
池上:PFシステム部は、その名の通りですが、DMM GAMESのプラットフォーム開発を担っています。開発面ではユーザー目線で素早く柔軟に対応すること、技術面ではパフォーマンス/ユーザビリティ向上のために未使用技術を積極的に採用することを含めシステムとしての可用性を高めること、これらを主な目標として掲げています。
関口:私がいるPF企画制作部は、ユーザーやゲーム開発のチームなどから寄せられる意見を取りまとめながら、サービスや機能を実装してリリースするまでの進捗管理と各種調整を行っています。時には社内の別チームとのシナジーを生み出すために連携することもあり、幅広い職務内容です。あくまでユーザー目線でのサービス提供を意識しているという点では、PFシステム部とも同様ですね。
ユーザー目線でのサービス提供とは?
ユーザー目線とは例えばどのようなことを行うのでしょうか
関口:そうですね、一つの例として、カスタマーサポートとの連携があります。お客様から寄せられたご要望を元に機能開発へと繋げました。例えば、ユーザー同士の交流ができるコミュニティ機能をさらに盛り上げるためにユーザーが写真をアップできる機能や、コミュニティ内に自分でスレッドを立てる機能など。ゲームプレイを楽しんで頂くプラットフォームとしての健全性を維持しながら新しい機能を追加しています。
池上:そういった機能開発の要望が、ディレクターやマーケティング等の担当部署からシステム開発側へ寄せられます。この時、単純に開発観点で考えるだけではなく、事業目標に沿っているのか、本当に多くのユーザーにとって必要な機能なのか、その絞り込みからディレクターやマーケティングの担当者と一緒に検証することを意識しています。
関口:職域をまたぐ相談や協業は自然にできていますよね。ディレクターとエンジニアにしても隣の席に座っているくらいですし、ユーザー目線で開発を行うためにはコミュニケーションが非常に重要だと考えています。
ボトムアップを活かした開発体制
特に印象に残っている開発案件はなんですか
関口:やはり、GAME PLAYER*の開発ですね。
(*http://www.dmm.com/netgame/top/guide/playerguide_html/=/ch_navi=/)
池上:ですね。
関口:DMM GAMESにもランチャーは元々あったんですけどね。
池上:当時は、エルダー・スクロールズ・オンラインを導入した時期でした。GAME PLAYERの開発方針や手法については、いろいろと検討した結果、会社としても重要な施策であり、また、その後の開発において保守性の高さが求められていたため、スクラッチで開発することを最終的に決断しました。
関口:これまで誰もやったことがなかったことなので、初期段階からエンジニア側にも参加してもらい、時間をかけて開発しました。役割分担は最初に決めましたが、互いの状況を確認しながら柔軟に調整し合っていました。それも、マネジメントが入るわけではなく、現場間でやり取りしていましたね。
開発における技術選定はどのように行われていますか
池上:ありがたいことに、DMM GAMESはたくさんのユーザーに利用頂けるようになりました。その結果、以前は最適だった構成や設計が、時を経てベストとは言えなくなってきました。そのため、QCDを追求するうえで、システムにより適した技術や手法の採用、ドメイン駆動の導入、ユニットテストやコードレビューの必須化、DevOps系の再構築など根本的な改善を急ピッチで進めています。基本的にTOPダウンで細かな部分にまで指示が飛ぶことはありません。現場のメンバーが自律的に新しい技術を学んで実践しています。マネージャーはそれを吸い上げてサポートしている、というイメージです。
関口:より良い状態に変えるために必要なことを取り入れる。健全な自己否定が自然とできる組織だなと思います。
池上:いくつか具体例をあげると、これまで全体最適を考慮して技術を選定することが多かったのですが、現在はシステム最適指向で選定するようにしています。また、大型リプレイス案件ではモノリシックな構成だったシステムから、マイクロサービス的な構成を目指すようになりました。他にもたくさんあります、よね?
関口:いつも開発ありがとうございます!
池上:(笑)。あとは、あるコンテンツでAWSでのサーバーレスの構成をメンバーで検討して、言語もPythonを選択して構築しました。巻き込み障害や巻き込まれ障害がほぼなくなり、インフラ面での運用負荷がかなり軽減されましたね。こういった一つ一つの取り組みの積み重ねの副次的な効果だと思いますが、全体として、プログラミングスキルが上がり、コードの保守性が上がっていることを感じます。
プラットフォーム開発に活かすことができる経験
部署のメンバーにはどんな方がいますか?
池上:PFシステム部には、本当にいろいろな経歴の方がいます。例えば、前職ではデザイン寄りの会社で基盤構築〜プログラミングまで幅広く担当していて現在は基盤構築を担当している方、小規模のSIerにて上流〜下流まで経験した方で現在は大型リプレイス案件のメインプログラマをやっている方、SIerでweb系の開発に従事していて現在はコア機能開発のスクラムマスターを担った方などですね。あくまで一部の例ですが。
関口:PF企画制作部としては、様々な部署や協力会社との調整を取りまとめることが求められる場面が多くありますので、その時にユーザーにとって価値のある落とし所を追求することができること。そういったことをメンバーで意識しています。メンバーのバックグラウンドは、エンジニア・デザイナー・webディレクター・webサービス運営担当・ゲーム開発/運営担当など様々です。DMM GAMESのプラットフォーム開発では、ゲーム開発のための案件や、ユーザーがゲームプレイするための案件があります。そのため、フロントエンドはUI設計やデザイン、バックエンドはAPI開発やwebサービスの機能実装など、様々な経験を活かすことができるポジションがあるのが特徴だと思います。
プラットフォーム開発チームのありかた
これからどんなチームを作っていきたいですか
池上:プラットフォームそのものは売上に直接貢献するわけではありません。各ゲームタイトルへの送客増加、dau/mauの向上における貢献が求められます。PFシステム部は、そのために一秒でも早くユーザーにゲーム体験を届ける、などといった大きな目標を見失わずに試行錯誤できる人材の集団でありたいと考えています。
関口:ディレクターは、プラットフォームの価値を最大限活用して事業を加速させるようなチームにしていきたいと考えています。それと、案件リリースの短縮/遅延によって事業損益に与える影響を考える。勿論、個人で責任を取るようなケースはありませんが、自分自身でも常に経営的な視点を持ちながらディレクションをしたいと思っています。
池上:正直、まだまだプラットフォームとして成熟しきっていない部分はあると思っています。どんなタイプのゲームでも受け入れられる体制を整えて、多種多様なお客様に最高のユーザー体験を届ける。そんな世界を実現する役割を担えることがプラットフォーム開発の一番の魅力ではないでしょうか。
池上さん関口さん、ありがとうございました!
次回は、更に具体的な、働き方についてエンジニアへインタビュー予定です。
ぜひ引き続きチェックしてください!
第一弾:DMM GAMESプラットフォーム開発本部について
第二弾:ゲームプラットフォームのミッション遂行の秘策とは?
第三弾:プラットフォーム開発メンバーの働き方と環境(予定)
★DMM採用情報はこちら
DMM Group 採用~|https://dmm-corp.com/recruit/
★ゲームプラットフォーム関連ポジション