
【意外な経歴シリーズ#5】医療ベンチャーからゲームエンジニアへ
【意外な経歴の社員】シリーズの5回目です。
今回ご紹介する意外な経歴の方は、一貫してエンジニア職ではあるものの様々な業界を渡り歩いてきた方の紹介です。
直近では、医療ベンチャーのインフラエンジニアからゲーム開発エンジニアに転身しました。
なぜ、ゲーム業界に飛び込んだのか、紹介していきます。
1. 自己紹介をお願いします。
元々はインフラエンジニアで、プロバイダやクラウド事業者から基幹システムや金融のバックヤードのシステムを担当していました。
直近では医療ベンチャーのインフラエンジニア兼フィールドエンジニアとして活動していましたが、元々、ゲーム好きで挑戦の機会を得たので、ゲームのインフラエンジニアとして入社しました。現在はマネージャーも務めています。
2. 仕事内容について教えてください。
私の役割は、アイディスで開発している『ラストクラウディア』や『Critter Crew』のインフラに関する判断を行うことです。インフラ自体はほぼ外注されているため、私はコントローラーとして依頼や設計導入を担当しています。開発部のマネージャーとしては、運用と開発の両方を柔軟に対応できる組織作りが課題です。
<補足>
ゲームのインフラエンジニア
オンラインゲームの安定した稼働を支えるためのサーバー、データベース、ネットワーク、クラウド環境の設計、構築、運用、保守を担当します。
ゲームのインフラエンジニアの役割
高トラフィックや低遅延に対応するためのスケーラブルで信頼性の高いインフラを構築し、システムの監視やトラブルシューティングも行います。また、セキュリティ対策やパフォーマンス最適化にも注力し、プレイヤーに快適なゲーム体験を提供します。
3. インフラエンジニアになった経緯について教えてください。
最初は、漠然と「ITエンジニアになりたい」と思っていました。しかし、ITエンジニアと言ってもその分野は幅広く、エンジニア職によって業務内容や使用する言語は大きく異なります。
その中でインフラエンジニアを選んだ理由は、「どこでも通用するエンジニア」であると考えたからです。インフラは全ての根幹であるため、インフラエンジニアは、すべての業界・すべてのサービス・システムで必要とされます。私自身もこれまで金融、通信、製造、建築など、幅広い業界で働いてきました。エンジニア職によっては特定の業界でしか職がないこともありますので、どこでも仕事を得られるという打算的な理由もあって選びました。
また、結果としては勘違いでしたが、インフラエンジニアはバックエンドなので、言語や仕組みの変化が少なく、多少楽なのではないかと考えていました。フロントエンドエンジニアはツールの進化で言語の変更が非常に早いので大変なのは確かなのですが、インフラエンジニアも資格が2年更新であったり、どのエンジニアでも常に勉強が必要でした。

4. 仕事で難しいと思うことはなんですか。
ゲーム業界のインフラは決まったパターンが少なく、お客様の流入の予測が立てづらいところですね。初動が一番多いという特徴もあるので、数か月・数年単位を見通して、サーバーの増床・縮小を計画に入れなければならないところです。
また、クラウドサービスを選択することが多いのですが、新しいサービスが頻繁にリリースされるため、それらの情報を常に把握しておかなければ選択肢に入れられないので、追いつくのが大変です。
5. どんなところに、インフラエンジニアのやりがいがありますか。
アプリやサービスによって、インフラの構築や考え方が全く異なるため、その違いを考慮しながら構築する過程に面白さを感じています。その上で、「ちょうどいいインフラ環境を構築すること」にやりがいを感じます。
インフラは基礎の部分なので、過剰に準備してもコストの無駄になりますし、過少だと運用に大きな支障をきたします。コンテンツビジネスにおいてインフラの効率化は必須事項です。そのため、ゲームの企画段階から参画して、「このゲームはどのくらい売れるのか?」「想定がこれくらいなら、1時間当たりの最大アクセス数はこれくらい」といった計算を行い、最適な設定を考えていきます。
イメージとしては、交通整備のようなものです。実運用に入って、アクセスが遅延せず、またガラガラ過ぎずにスムーズに流れ、想定通りのパフォーマンスを発揮できるとやりがいを感じます。ピーク時に交通をさばくのも楽しいですね。
6. 仕事をする上で、意識していることはありますか。
常にコスト意識を持ち、経営目線で考えることを意識しています。エンジニアとしてコスト意識を持つことはピンとこないかもしれませんが、例えば使用している言語を変えることでコスト削減が可能になることがあります。
現在、アプリゲームのインフラではPHP言語がよく使われています。この言語は1996年に誕生したため、もう30年近く経ちますので、今のシステムで使用すると遅いんです。その理由は、当時主流だったプログラムのソースコードを一つずつ読み、その都度実行する方式を取っているためなんですが、処理が遅いということは、多くのリソースを消費することになります。
2009年にGoogleから発表されたGo言語は、ソースコードをすべて変換してから実行するため、処理が速いです。具体的には、GoはPHPの10分の1程度のリソースで済むため、大幅なサーバー維持費のコスト削減につながります。このような点を常に考慮しています。
ただし、Go言語は単調なので、複雑な処理ができないというデメリットがあります。どの言語を選択するかは、会社やゲームのスタイルによって異なるでしょう。2015年に正式版がリリースされたRust言語は、高速かつ複雑な処理も可能なので海外では採用が進んでいます。日本ではまだ採用例は少ないですが、こうした動向にも常にアンテナを張っています。

7. エンジニアとして大切なことは何ですか。
組織としてのチーム作りが重要です。開発においては、単に仕様をこなすだけでなく、利用者に本当に価値のある機能を提供するためにリソースを適切に割り振ることが必要です。そのため、全員で意見を出し合い、より良いものを作っていかなければなりません。お互いを信頼し、意見を言い合える環境を作ることが大切です。
インフラエンジニアのチームは大人数になることは少なく、10人いれば多いほうです。場合によっては、サーバーエンジニアと兼任で1人しかいないこともよくあります。だからこそ、少人数でのチームワークが重要になります。
8. インフラエンジニアになるためのアドバイス
ぜひ、資格を取ってください。
学生時代に取っておくといいものは、ITパスポート試験・基本情報技術者試験・応用情報技術者試験などです。
次に、クラウドサービスの資格を取ってください。
Amazonが提供しているAWSの資格は使っている会社がとても多いので、資格を取得して損はありません。
AWS 認定は複数ありますが、まずは、基礎ジャンル「Foundational」のAWS Certified Cloud Practitionerです。
次に初級~中級ジャンルと言われる「Associate」の資格です。こちらには5つありますが、その中で取るべき資格は3つです。
管理向けのAWS Certified SysOps Administrator、開発向けのAWS Certified Developer、設計者向けのAWS Certified Solutions Architectです。
インフラエンジニアを目指すなら、管理向けと設計者向けの2つがあるといいですね。サーバーエンジニアなら、開発向けの資格を持っているといいと思います。社会人で、エンジニアとして働いているのであれば、この3つを取っているといいと思います。
AWS以外ですと、Linuxの資格ですね。LPIC-1でしたら学生でも取れると思います。
資格を取ったら、実績を積んでいきましょう。資格の中には経験がないと受験が難しいものもあります。なので、仕事を任せてもらえるように信頼を積み重ねていくことが大切です。そして、長くこの業界で活躍し続けるために、勉強を続けていきましょう。
最新の技術を知っていれば、できることがたくさん増えます。
9. これからの目標
アプリ事業者が直面している課題である開発費用の増加をAIや他の手段で抑えることが目標です。また、開発時間の短縮も重要な目標です。
将来的には、社内にインフラエンジニア部門を構築したいと考えているので、外注の会社から学びながら目標に向かっています。
