1
/
5

【スクレポ】現場社員が語る!大規模MMOタイトルを支えるインフラエンジニアのやりがいとは

スクレポ

こんにちは。スクウェア・エニックス 人事部の服部です。

長かったゴールデンウィークも終わり、気が付けば明日から6月。いかがお過ごしでしょうか。暑くなったり大雨だったりで体調を崩しそうになりますが、皆さまご自愛ください。

さて、令和最初のスクレポは、弊社のMMOタイトル「ファイナルファンタジーXIV」を支えるインフラエンジニアの登場です。インタビューの端々で、タイトル愛をうかがえる内容となっております。

ぜひお読みください!

                           情報システム部 檜垣 隆広

経歴と入社したきっかけを教えてください。

前職は商社系SIerで通信キャリア事業者向けに、ITインフラの導入業務を行っていました。 ITインフラとは、サーバ、OS、ストレージ、DB、ネットワークなどを組み合わせた、情報サービスを動かすための基盤設備のことを言いますが、私自身は主に、サーバ・ストレージ技術担当者として、顧客企業のプライベートクラウドなどを実現するためのシステム構築案件を担当していました。

SIerというと、一般的なイメージでは、提案や設計などの上流工程やプロジェクト管理のみを担当していると思われるかもしれませんが、私が実際に行っていた業務では、製品紹介やアーキテクト検討などのプリセールスから入り、その後のポストセールスで行うシステム自体の設計・構築・試験・導入までの、いわゆるウォーターフォールモデルの上流工程から下流工程までを一貫して担当することが多かったです。

各種案件を通じて経験を積んでいくうちに、プロジェクト管理も自身で担当することが多くなり、プロジェクト管理の手法をいろいろと勉強していた時期があったのですが、その中で、「ファイナルファンタジーXIV(以下、FFXIV)」を新生した際のプロジェクト管理について解説した講演動画を目にしました。二点見積や見積ポーカーなど、ユニークな方法が紹介されていてとても印象に残ったのを憶えていますが、それがきっかけで、FFXIVに興味を持つようになりました。

社会人になってからは時間がなく、しばらくゲームをプレイすることから離れていたのですが、なんとなくFFXIVのプロデューサーレターライブのアーカイブ動画を見ていて、なんだか面白そうだな、と感じるようになって、もともと子どもの頃はゲーム好きだったこともあり、気が付いたらパッケージを購入してプレイを始めていました。

FFXIVは私にとっては初めてのオンラインゲームでありとても新鮮に感じ、最初は単純にゲームに没頭していたのですが、そのうちに今度はこのゲームがどのような仕組みで動いているのか、どんなインフラ構成でできているのか、ということが仕事柄気になりだし(笑)、システムの中身を見たいと思うようになりました。 すると、丁度タイミングよくFFXIVの(ものと思わしき)エンジニア採用募集広告をWeb上で見つけ、まぁ落ちるかな~と思いつつ試しにそれに応募してみたところ、予想に反してスルスルと採用されたため、新天地を求めてスクウェア・エニックスに入社することにしました。

仕事内容を具体的に教えてください。

情報システム部でFFXIVのインフラ担当として、サーバ設備の構築・運用・保守をメイン業務として行っています。 オンラインゲームであるFFXIVは、クライアント単体で動くゲームではなく、スクウェア・エニックスが持つFFXIV専用のサーバ設備群と常に通信を行うことで、多人数でのマルチプレイを実現しています。そのためサーバが動かない状態ではゲームをプレイすることができないので、サーバを安定稼働させることがインフラ担当者の主要なミッションとなります。

安定稼働を実現するための方策としてIT業界一般的によくある話で、動いているシステムにはなるべくさわらない、という考え方もあるのですが、FFXIVではパッチ適用という形でコンテンツやサービス内容を常に拡張し続けておりそういうわけにはいかず、拡張のたびにサーバ構成変更が必要となる場合が多々ありますし、大規模拡張が近くなりユーザー数が増えてくると、既存のリソースだけでは収容できなくなるため、機器増設を行う必要も出てきます。また、機器の老朽化が進んでくると故障率が高くなる一方のため、適切な時期にリプレイスを行う必要もあります。つまり、たえず構成変更を求められるシステムであると言えます。

そのため、そのときどきの構成状態や、開発側の要件に合わせて、最適かつ実現性の高いインフラ構成を都度検討し、サービス影響への注意を払いながら設定作業を行う、というのがインフラ担当者に課せられた仕事です。 FFXIVはシステム規模も非常に大きく、システム全体を構成している機器の数が膨大な量になります。作業ひとつとっても、例えば数千台のサーバの設定変更を1~2時間程度で完了させなければならない、という要件も頻繁にあります。これを手動で1台ずつ対応しようとすると、とても時間内には終わらせられませんし、この機器にこの設定を入れ忘れた、といったようなヒューマンエラーを発生させるリスクも高まり、作業ではない何かがいろいろと終わってしまいます。

それらのリスクを回避するため、様々なツールを用いることで作業の自動化を行っています。Infra as Codeという言葉がありますがまさにそれで、ツールを整備し、インフラをコードで管理することで自動作業を可能にし、複数機器へ投入する設定の正しさを担保するのと同時に、手動で行う作業を極力減らして工数を削減していくような運用効率化に取り組んでいます。

また、物理的な設備を扱っているため、機器が突然故障することも当然あり、サービス影響を可能な限り抑えるべく、迅速に障害対応を行うことも重要な仕事の一つです。 単純な機器故障であれば、故障部品を交換するだけで済み話が速いのですが、ときおりなんだかよくわからない壊れ方をする困ったコもおり、そのようなケースに限って重大なサービス影響を引き起こしてしまうということもザラにあるため、そうした場合は、切り分け試験や再現試験を行い障害部位を特定し、根本原因を調査し、暫定対処と恒久対処を検討し、開発側と協議しながら対策していく、というような泥臭い対応もしています。

直接コンテンツやゲームプログラム自体を作っているわけではないのですが、それらを動かすためのシステムを裏方的に支える仕事になります。

仕事の失敗例など、エピソードはありますか。

インフラ作業は成功して当たり前!失敗したら、、、(恐怖)!となることも多いので、毎回祈りながらエンターキーを押すおしごとをしています。 …半分冗談で半分本当ですが、サービス影響に直結するような作業が多いのは確かなため「安定稼働が当たり前」をスローガンとして常に責任感と緊張感を持って作業しています。

それでも失敗例はいろいろありますが、笑えないものも多いため(苦笑)、この場で紹介できるようなことで特に印象に残っているのは、サーバにメモリを増設したときのことでしょうか。 作業内容としては、ラックからサーバを引き出し、シャーシの蓋を開け、メモリを挿して、蓋を閉めてラックに戻す、という単純なものなので、これ自体はイージーなのですが、例によって短時間に多数の台数に対して作業を完了させなくてはならず、物理作業のため自動化もできず、恐ろしい勢いで次々にメモリを手で挿す必要がありました。静電のためゴム手袋をして作業していたのですが、メモリを挿すスロットが固くてなかなか挿さらず、とにかく指が痛かったです。軍手もはめるべきでした。

仕事のやりがいや、当社で働く魅力を教えてください。

仕事のやりがいや魅力はたくさんありますが、特に紹介したいポイントとしては、日米欧3リージョンでのオンプレミス環境を構築・運用していることでしょうか。

FFXIVはワールドワイドでサービス展開をしており、ゲームの特性上クライアント-サーバ間のレイテンシを極力抑えるため、日本、北米、欧州にそれぞれ物理的なデータセンターが存在しています。基本的にはリモート運用が可能な仕組みを構築しており、日本のオフィスから作業を行うことが多いですが、対応する案件によっては物理作業が必要となるケースもあるため、海外出張して現地で対応を行うことも多々あります。 また、世界中のどの地域からどれくらいのユーザーアクセスがあったか傾向を可視化するというBI的な取り組みも最近行っており、世界というものを意識した仕事が出来ることが、とても面白く感じられます。 前職での経験も含めて、日本において世界規模でITインフラを展開している企業はかなりレアかと思いますので、非常に大きな経験をさせてもらっています。

もう一つ紹介したいポイントは、Infra as CodeやKubernetesなどの先進的な技術を、どんどん運用に取り込んでいるところです。 業務内容の紹介でも少し触れましたが、とにかく圧倒的な物量を、少ない人員と短い時間で対応していくために、常に運用効率化が求められます。 FFXIVは既にサービスが動いているシステムである以上、抜本的なアーキテクチャ刷新などはなかなか行い難いのですが、インフラ自体を管理・運用していくための技術という観点では、むしろ積極的に取り入れていく必要があります。ときには、腐ってやがる…早すぎたんだ…というようなものもしばしばですが、新しい技術やツールに触れられる機会はたくさんあります。

そして、私自身も「光の戦士」のひとりですので、パッチリリースやファンフェスなどの数々のイベントを通して、たくさんの人たちが熱狂しているということを感じることができ、FFXIVという非常にアツいタイトルの舞台裏で働けていることは、大きなモチベーションとなっています。

逆に、仕事の厳さ・難しさを感じるのはどんな時でしょうか。

IT業界全般的に言えることであると思いますが、常に最新の技術動向をキャッチアップしていく必要があるため、日々の業務に取り組みながら、技術勉強、スキル習得に励まなくてはなりません。特に最近はサイクルも速く、ウカウカしているとあっという間に置いて行かれますが、FFXIVのインフラチームも常に新しい技術やツールを見定め、メリットがありそうであれば積極的に採用していこうというマインドがあるため、運用も常に変化していき、追っていくのは大変かもしれません。

各種ツールを習熟していくことを、チームではよくダンジョン攻略に例えています。例えば、Dockerダンジョン、Kubernetesダンジョン、Serverspecダンジョン、Splunkダンジョンなどなど他にもたくさんあり、コンテンツは常に追加されていきます。知らない間にダンジョンの地下深くに迷い込み、強敵と出会ってしまい、逃げられない戦いに身を投じなければならないこともしばしばで、そのレベルになると応援がなかなかやって来れずソロプレイになってしまうことも多々あります。こうしたツール類は、非常に便利で強力な武器である反面、使い方を間違えると多大な影響を及ぼしてしまう諸刃の剣的な側面もあり、中には運用を重ねてきた結果、設計・設定が複雑怪奇になりすぎてパーティプレイ必須となってしまったCobblerダンジョンや、即死トラップ満載となってしまったPuppetダンジョンなどの超高難度レイドも完備されています。

難解なダンジョンを攻略し深堀りしていくことにどうしてもとっつき難さを感じたり、ダンジョンの入り口自体が見つからず途方に暮れてしまうなんていうこともあります。しかし、仕組みや全貌を理解できたときは、ゲームをクリアしたときの達成感に近いものが得られ、エンジニアとしてのスキル向上も実感でき、なにより運用の安全性や効率向上につながります。

また、グローバル運用をしている関係で、英語でのコミュニケーションが必要となる場面が多くあります。 海外オフィスにいるエンジニアや、取引先のエンジニアなど、海外データセンターの作業は彼らと調整を行いながら実施していくことも多いのですが、メールやチャットベースの読み書きはまだなんとかなっても、会話となると非常に苦戦しています。 言語以外にも、文化、習慣や考え方の違いなど、考慮が必要なことは多々あり、なかなか案件を進行させるのは一筋縄ではいかないこともあります。個人的には良い経験となっていますが、グローバル案件の仕事の難しさは日々感じています。 他にも挙げればキリがありませんが、仕事の性質上チャレンジングなことの連続ですので、自分を成長させていくにはとても良い環境だと思います。

どんな人と一緒に仕事したいですか。また、どんな人がこの仕事に向いていると思いますか。

先にも言いましたが、仕事の性質上どうしても、日々発生する課題や問題などのメンドウごとを如何にして解決するか、というのが本質になってきますので、困難に立ち向かうことを楽しめるような人にはとても良い環境であると言えます。

仕事の内容としては、サーバ構築や障害調査、関係者との調整、新技術のPoCなどそのほとんどが "難解なパズルを解く作業" と呼べると思います。なので、難しいパズルを解くのが好き!とか、複雑に絡み合った紐をほどいて整理するのが得意!みたいな方には、特に向いているのではないでしょうか。困難なタスクを完了させたときの達成感を味わいたい人向けの、なんだかよくわからない仕事がたくさんありますので、チャレンジ精神旺盛で、問題解決に粘り強く取り組める方と是非ご一緒させていただきたいです。

あとはやはり、難解なパズルを解きまくっていると、いろいろと疲れてくると思いますので、息抜きや適度に手を緩めながら、自分で自分のメンテナンスができると良いと思います。ゲームなんてやると良いんじゃないでしょうか?今ならFFXIVというゲームがおすすめです。フリートライアルもありますので是非どうぞ。


ご自分の今後の目標や夢を教えてください。

仕事の目標としてやりたいことは今のところ二つほどあります。

ひとつは、現行のFFXIVのインフラアーキテクチャにも、管理性や運用性を向上できるポイントがまだ多数あると感じるため、もっと最適化できる部分の構成を見直し、各種のツールダンジョンも攻略しやすいように整理したりというような、既存構成と運用の改善提案を今後も積極的に行い、実現していきたいと思っています。

もうひとつは、現時点で計画自体、影も形もあるのかどうかもわかりませんが、次世代MMOがもし開発されることがあれば、そのインフラのアーキテクトをやりたいという思いはあるので、そのためにも技術動向にアンテナを張りつつ、現行FFXIVインフラ運用でのナレッジ、ノウハウ蓄積につとめていきたいと思います。

仕事に限らずといったところでは、自分の子どもとFFXIVを遊びたいなぁ、というのが個人的な夢としてあったりますが、、最近生まれたばかりなので、実現するには少なくともあと十数年以上はかかる予定でして(苦笑)、それまでFFXIVが元気であり続けられるように仕事を頑張りたいと思います。

これから当社へ応募される方へのメッセージをお願いいたします。

このインタビューを読まれて、なんだか難しい仕事みたいだなぁ、という感想をお持ちになられた方も、もしかしたらいらっしゃるかもしれませんが、大抵のことは続けていれば嫌でも身についてきますし、先ほども仕事をパズルに例えましたが、困難なタスクに見えても落ち着いて考えてみれば、ひとつひとつは割と単純な作業が組み合わさっているだけのケースがほとんどです。私も入社したばかりの頃は、何のタスクがどう進行しているのか全く分かりませんでした。

運用で使われているツール類も今までに触ったことがないものだらけで操作の仕方が分からず、インフラ構成もなかなか全貌が見えてこず、最初は大変だった記憶がありますが、日々の仕事に一生懸命取り組んでいくうちに、なんやかんやでなんとかなってきて、こんなインタビューもされたりしますので(苦笑)、そこはあまりかたくならずに、是非気軽にチャレンジしていただければと思います。

私たちも既存の構成や運用がベストであるとは考えていないため、よりよいインフラを目指して一緒に課題解決を模索し、プレイヤーの利便性を向上するという形で、FFXIVをさらに盛り上げていければ最高です。 刺激的な毎日が送れることは保証いたしますので、ご応募をお待ちしております!


スクウェア・エニックスでは一緒に働く仲間を募集しています!

インフラエンジニア

ローカライズプロジェクトマネージャー

プロジェクトマネージャー

品質管理アシスタントコーディネーター

プロデューサー・ディレクター

宣伝プロモーション担当

ゲームデザイナー(プランナー)

エンジニア(プログラマー)

アーティスト

サウンドエディター・サウンドプログラマー

コミック編集

電子書籍の制作進行

19 いいね!
19 いいね!
同じタグの記事
今週のランキング