Cygamesの大規模ソーシャルゲームを技術面から支えるエンジニア部門の魅力とは…CTO芦原氏に聞く【PR】

『神撃のバハムート』や『アイドルマスター シンデレラガールズ』など魅力的なコンテンツで破竹の勢いで成長してきたCygamesだが、直近では『三国志パズル大戦』といったネイティブゲームの開発にも注力している。

同社は、ネイティブアプリに全面的にシフトするわけではなく、ブラウザゲームやネイティブアプリと全方位でコンテンツ配信を行う方針だ。今回、取締役CTOである芦原 栄登士氏にインタビューを行い、エンジニア部門での取り組みと特徴について話を聞いた。

―――: 本日はよろしくお願い致します。まず、芦原さんのキャリアを教えていただけますか?

最初のキャリアは大手ゲーム会社でプログラマーとして勤務し、オンラインゲームの開発に携わりました。その後、いくつかのゲーム会社を経ていく中で現在のCygames代表の渡邊と出会いました。その縁で同社に2012年4月に入社しました。現在、取締役CTOとして、フロントからバックエンド、インフラといったクライアントからサーバーまで技術的な取りまとめをやっています。

―――: 入社時の状況はいかがでしたか?

Cygamesのコンテンツは非常に多くのユーザーに遊んでいただいており、数も大規模です。また、会社も設立されたばかりでしたので大規模ソーシャルゲームの運営に対応するためサーバーの負荷分散に関して多くの努力を必要としていました。

そのため開発チームと開発方針を決め、少しずつ修正を行っていきました。またCygamesは『神撃のバハムート』をベースとしたエンジンを使って複数のタイトルを開発・運営していましたが、あるコンテンツの成功事例を他のコンテンツでも使えるようにしたり、あるコンテンツで発生した問題を他のタイトルで起きないようにしたり、それぞれの良い点悪い点を生かし安定したサービス提供の実現に注力していました。



■安定運用と技術開発の2本柱で 「Unity」も早期から利用

―――: Cygamesの技術的な特徴はどういった点にあるとお考えでしょうか?

ブラウザゲームの限界に挑戦した「グランブルーファンタジー」の事例にもみられる通り斬新なコンテンツ作りにも力を入れる一方で、ごく当たり前の事を当たり前に行い、基本をしっかりと実行して常に安定運用を重視することを心がけています。

そのためCygamesのエンジニアは、一般的な、熟練した技術をしっかりと使って、サービスを安定稼働させることに長けています。新しい技術を取り入れる事ももちろん重要なのですが、多用しすぎる事によりサービスの安定性が失われてしまっては元も子も有りません。

もう一つ特徴的なことを挙げるとすると、社内SNSを使用した情報共有が文化として定着していることです。例えば、とある開発チームで「こういう問題が起きている、どうしよう」などと書き込むと、全く別のチームの開発メンバーが「こうすればいいよ」などと書き込んで教え合うといったことが日常的に起きています。

会社が大きくなり、人数が増えていくと情報や知識が偏りがちになるのですが、Cygamesでは一般的な情報共有ミーティングなどの他にこの社内SNSがうまく機能しています。社内SNSを導入すること自体は簡単にできることかもしれませんが、定着させるまでには相当な時間と根気が必要なケースが多いと思います。

―――: エンジニア部門として他に何か特徴的なことはありますか?

そうですね。特徴的といえるかどうかわかりませんが、エンジニアチームが運用と研究開発に分かれていることが上げられるかもしれません。

安定稼働を目指して運用する一方で、様々な技術的な研究開発にも力を入れています。もちろん研究開発での成果は運用に活かしていますが、相当慎重にやっています。先程申し上げたように、新しい技術を安易に取り入れることや多用することによって起こりうる問題や課題というものも生まれてくる可能性も考慮しなければなりません。

―――: 研究開発部門は、ソーシャルゲーム系では珍しいかもしれませんね。どういった研究をされているのでしょうか?

例えば、まだ世に出ているタイトルはありませんが、Unityについてはかなり早い段階から研究していました。ソーシャルゲーム業界で3Dのゲームがまだなかった頃からずっと取り組んでいます。

また、ゲームエンジンの開発も行っています。『神撃のバハムート』のリリースから1年後には新しいエンジンを作り始め、現在サーバー側で2種類のゲームエンジンが存在しています。今はネイティブアプリ側でも、すでに動いているゲームをベースにゲームエンジンを開発しています。

―――: 『三国志パズル大戦』を開発されましたが、こういった技術蓄積が生きたわけですね。

ええ。Cygamesのエンジニアチームは既に十分な技術力を有していると自負していますが、特にネイティブアプリに関しては更なる技術力向上を目指しているところですので、エンジニア採用を強化したいと考えています。その上で、会社の方針としてブラウザゲームもネイティブゲームも、全方位に提供していきます。

―――: そもそもの疑問なのですが、なぜ研究開発にも取り組むのでしょうか?

新しいことを常に研究していないと時代の変化についていけません。私自身、大手ゲーム会社で研究開発部門にいましたので、当たり前のように取り入れました。まだインターネットが普及し始めて間もない頃にネットゲームの研究開発を始め、後日製品化されたことがあります。そういった経験も現在研究開発に取り組むモチベーションとなっています。

―――: 研究開発にはどういった方が従事されているのでしょうか?

技術力が高くて新しい技術を身に着け新しいものを生み出すことにより興味があるエンジニアが多いです。もちろん、そういった志向を持つエンジニアにも運用が得意という人もいるのですが、より得意とする分野で力を発揮してもらったほうが成果が出てくると考えています。

―――: 配属はどうやって決めているのでしょうか?

必ず希望通りにできるわけではないですが、本人の希望や経験などを勘案して、配属し適性を見極めていきます。研究開発に入ったけれど運用への異動を希望するエンジニアもいますし、逆に運用では十分に力量が発揮されないと感じて研究開発に行きたいというエンジニアもいます。

―――: ネイティブ系のエンジニアの採用を強化されているとのことですが、どういったスキルや経験が必要でしょうか?

UnityやCocos2d-xに強い人、もしくはゲームプログラミングのセンスがある人、例えばコンシューマーゲームでの開発経験がある人などに来て頂きたいと思っています。ゲームの面白さは何かのタイミングやレスポンスといったプログラマーが制御している部分でかなり左右されることがあります。ここにゲームプログラマとしてのセンスが必要になるのです。

もちろんブラウザゲームはWEBアプリですのでWEBプログラマーが必要ですが、ネイティブゲームの開発ではそういったゲームプログラマが必要となってきますので、ゲーム開発に関する経験やセンスを持った方を必要としています。

―――: この他にプログラマーとして必要なスキルはありますか?

ジェネラリストであり、且つスペシャリストであって欲しいです。インフラやデータベース、ネットワーク、バックエンド、フロントエンド、そして、Unity、Cocos2d-xなどすべてについて知識を持っていて、その中で誰よりも詳しい専門分野を持っていることが理想像ですし、目指して欲しいところです。全てについて知っていると、問題が起きた時も解決が早くなります。ですから、新卒で入ったエンジニアについては、特定の分野だけで仕事するのではなく、様々な分野の仕事に携わり様々な業務知識を身につけてもらうようにしています。去年入社した新入社員は全員、JavaScriptの分野から入りましたが、現在はFlashやサーバーサイドなど様々な分野で仕事をしています。

―――: スキル以外に重要視される要素はありますか?

スキルだけでなく、素養としては「素直さ」を重視しています。素直さ、というのは当たり前のことを当たり前にできるよう他人の意見を聞き、自分に対してよい意見も悪い意見も受け入れることが出来る姿勢を持つ、ということです。

また、開発に携わっていると、技術的に正しいものがプロジェクト的に正しくないことがしばしばあります。それはどういうことかというと、プログラミング上正解であることがイコールゲームとしての楽しさ、面白さに必ずしもつながらないということです。

エンジニアは、技術的に正しいことが常に正解であると過信しがちです。プロジェクトの目的はあくまでもゲームとしての楽しさをユーザーに届けるということですから、技術的な正しさが本当に必要なことなのかどうかと考えられる素養も必要になります。



■味わえない大規模サービスを運用する楽しさ

―――: 今後の展開について教えて下さい。

グラフィック部門や企画部門では他に負けないものがあり、Cygamesのコンテンツの最大の特徴と言える水準にあると思っています。そして、そのグラフィック力、企画力を最大限に生かせる技術力を備えていくために、エンジニアチームをこれまで以上に強化し、Cygamesとして技術力もアピールできるよう取り組んでいきたいと考えています。これにはゴールはありませんが、常に技術力向上に取り組む会社でありたいと考えています。どの分野においても他よりも技術力の高いものを提供できるようになりたいです。

―――: 今後、技術的な部分で注目してほしいというポイントはありますか?

3/10にリリースした『グランブルーファンタジー』は「ブラウザゲームの限界に挑戦する」をコンセプトに開発を行ってきたプロジェクトですのでぜひ注目していただきたいです。

RPGゲーム本来の楽しさ、面白さを今日のスマートフォン上のブラウザゲームが、もしかすると実現しきれていないという思いからCygames開発陣が総力を結集した作品です。

HTMLとJavaScriptで作っていますがこれまでにないグラフィッククオリティ、サウンド効果などブラウザ上でネイティブゲーム並の動作を実現しています。

開発には様々な困難がありましたが、エンジニアチームを含む開発チームが試行錯誤を繰り返してきた結果、最高のコンテンツとして多くの方々に楽しんでいただけるブラウザゲームである、と自信をもって言えるコンテンツになっています。

―――: 『グランブルーファンタジー』はネイティブで出そうというお考えはなかったのでしょうか?

βテストではそうしたご意見をいただきました。社内的にもそういった意見が出た時期もありました。あくまでも一般論ですが、ネイティブには細かく、早く動く、エフェクトが乗せやすいといった利点がありますが、ブラウザゲームはなんといってもデータがサーバーにあり、ストリーミングで配信されるため、より多くのデータを使用することが出来るという利点があります。

グランブルーファンタジーはCygamesのコンテンツの中でもよりグラフィックに力を入れてきたため、その特性を生かすためブラウザでリリースすることを決断しました。またなによりもチームの「ブラウザの限界に挑戦する」という思いの結実した作品であるためブラウザでリリースすることにこだわったのです。

―――: なるほど。コンシューマーゲームのエンジニアからみたソーシャルゲームの面白さとはなんでしょうか?

ソーシャルゲームはコンシューマーゲームと違い、ユーザーの反応がダイレクトに、且つすぐにわかるコンテンツです。自分の作ったものが面白かったのかどうか、ユーザーの反応をすぐに感じることが出来る、それが非常に面白い点です。

コンシューマーゲームですと、やはり開発が終わるとそれで完了してしまい、ユーザーの皆さんからのレスポンスを感じることが出来るのは時間がたってからになってしまいます。売れているかどうかはある程度タイムリーにわかりますが、ユーザーからのアンケートなど反応が届く頃には、次のゲームにとりかかっていてピンとこないことがありました。

さらにCygamesですと運営規模の大きいタイトルが多く、本当に様々なご意見が大量に早い段階で届くため、自分たちの取り組んできたことの評価が多くのユーザーから頂けることが面白いですし、やりがいにもつながります。

また、サーバーの台数も他社にはないほどの規模ですから、思いもよらないことが起こったりします。その課題に対処するために、大規模なトラフィックをいかにさばくか、エンジニアの腕が問われる部分でもありますので、他では味わえない非常に面白い仕事だと思います。

―――:最後にメッセージをお願いします。

最高のコンテンツを提供するため、すべての分野で各自がNo.1になることを目指しています。
エンジニアであれば、バグがなく安定稼働する、新しい技術を追求することになりますし、プランナーであれば最高に面白いゲームにしたい、デザイナーであれば素晴らしいグラフィックデザインを生み出したい、という意識を高く持って取り組んでいます。

それ以外にも人事や広報、バックオフィス、デバッグ、ユーザーサポートなども最高のゲームを提供したいという思いから仕事に取り組んでいます。「最高のコンテンツ」を作って世界中の人に楽しんでもらいたい、という我々Cygamesのビジョンに共感できる方にこそ来て欲しいです。


 

Cygames採用ページ