エンジニアの生き様をウォッチするメディア

「いつでも現場に戻れるマネージャーでありたい」的野礼峰(株式会社gumi)~Forkwellエンジニア成分研究所

一部を除き、ほぼ福岡で開発が完結しています

――今回、この連載で初めて登場していただきます。まず、御社についてご説明頂けますでしょうか。

的野 株式会社gumiは、スマホ向けネイティブゲームアプリの開発及び運用をしている会社になります。私はその中で、福岡拠点のエンジニアをマネジメントしています。とはいえ、マネジメントだけでなくインフラを見るなどエンジニアとしても動いています。

会社はスタジオ制を取っていまして、本社にスタジオの本部があり、分岐という形で福岡にも拠点を持っています。現場にはエンジニアだけでなく3Dモデラーがいたり、シナリオを書いているメンバーがいたり、執筆メンバーがいたり、イラストレーターやプランナーも常駐しています。

――ゲーム開発に関わる人たちが、一同に会しているんですね。

的野 そうですね、東京のほうが動きやすいPR等に関しては、東京に主軸がありますが、それ以外の開発はほぼ福岡で完結しています。

――ありがとうございます。ご経歴について伺います、2012年6月にgumiさんに入られ、同年12月から株式会社gumi westさんに転籍されたとのことですが、マネジメントを始められたのはいつ頃からですか? 

的野 かなり早いうちからやっていましたね。マネジメント業務については2014年1月頃からでしょうか。株式会社gumi westはもともとgumiの支店としてやっていたのですが、その支店を独立化させたものです。メンバーは全員出向社員になっていたのですが、一昨年に会社を閉じてまたgumiの福岡オフィスという形で戻ってきています。

前職時代でもマネジメントは経験していたのですが、ゲーム業界に入るのは今回が初めてでした。技術的に不安なこともあり、入った当初は開発部隊から始めています。

――gumiさんに入社されるまで、大規模開発のご経験はありましたか?

的野 業種は違いますが、大規模なデジタルサイネージ等を担当していました。商業施設の大きなビルに配信するようなものですね。それから、長崎のほうでケーブルテレビ局のwebメールも担当しました。2000年初頭のころでまだGmail等のWebベースのメールシステムも少なく、POPでWEBメールを受信する機能自体が少なかった頃です。あとは、通販サイトショップのECをゼロから構築したり。そのあたりの経験はありましたね。

前職は小さな会社だったので、本当に飛び込み営業から運用、開発まで手がけました。ゼロからものを作るという経験は多く積めたと思います。

Node.jsの特性を知れたことは、大きな経験になりました

――開発メンバーとして入られた際に、大変だったことはありますか?

的野 PythonからNode.jsに開発言語が変更になったことですね。gumi自体のチャレンジで、使い勝手もサーバー構成も違い、フロントとバックエンドを同じ構成で作るとうまく動かなかったり。その辺はかなり苦労したところです。

リードに入ってからは、コードの障害を予見してまとめていくところに苦労しました。リリース当時のコードではまだ考えきれていないところ、障害を予見しきれていないケースが結構ありました。

細かい所ですが、大量にレコードが増えてしまうテーブル設計があったり。今動いているものは仕方ないんですが、今後の開発では生き物なので追加していかないといけません。今後分離をどうやっていくか、新しく追加したデータと今のデータとの整合性をどう取るか、などが課題になっています。

――ありがとうございます。実際にタイトルに関わられたのは3年9カ月くらいとのことですが、一番大変だったのはどんなことでしたか?

的野 1周年のときに障害が起きて、深夜にログインできなくなったケースですね。落ち着いたらログインできたんですが、翌朝また同じ問題が発生して。日付をまたいだときに一度全員ログインさせ直す処理があるのですが、その際にサーバー負荷が高くなりすぎるのでログインできない事象が起こったんですね。

タイトルの年をまたぐときなので、ユーザーも集まっています。そこをいかにコードだけ見て「どうやったらこの負荷に耐えられるようにするか」が結構たいへんでした。1周年はどうにか修正できて、2周年のときは同じ問題は起きませんでした。

――直るまでは、ずっとかかりきりにならなければならなかったと。

的野 そうですね。ちょうど土日だったので、土日に出社してああでもない、こうでもないと他のメンバーと試行錯誤していました。売り上げがかかっていますから、エンジニアもそうですがビジネスサイドの人間も大変です。「ログインできない、遊べない」というクレームも来るので、サーバー周りの障害はきついですね。

――一方で、このタイトルに関わった経験で一番大きかったものはどういうことですか?

的野 Node.jsの特性を知れたことですね。バックエンドの作り方が他のタイトルと違って、負荷のかかる所をサーバー台数で解消しようとすると、違う所(バックエンド)にしわ寄せが来ちゃう特性だったんです。そこを考えて作らないといけなかったので、とても勉強になりました。次のタイトルに向けて、ものすごい知見として残ると思っています。

前職では、ありとあらゆる経験を積みました

――前職では大学卒業から在籍されたという事ですが、そこではどういったお仕事をされていたのでしょうか?

的野 前職では社員が2名しかいなくて役員2人、アルバイトが1人、という会社でした。学生の頃にもこの会社でアルバイトをしていて、社長が1人でマネジメント・開発から納品・運用・保守までやる形でしたね。

私が担当していたのは昔で言う「ソフトハウス」で、いわゆる受注型で何でも作っていました。先ほどお伝えしたECサイトもそうですし、デジタルサイネージもそうです。あとはパチンコ系のバックエンドシステム、ホテルの予約管理システム、それから遠隔でのロボット制御など。

ロボットの業者と組んでRS-232C端子を開いてもらい、そこに信号を投げ、インターネットを通じてロボットを動かしてみるという工業高校向け遠隔ロボット制御のコンテンツの開発など、本当にいろいろなことを経験させてもらいました。

――その中で一番楽しかった経験というとどんなことでしょうか。

的野 やっぱり人目に触れるものをリリースして、皆さんに使ってもらって反響を貰えたことですね。デジタルサイネージもそう、実際に現場で見てキャッキャワイワイ言いながら触ってくれるところとか。タッチパネル系のデジタルサイネージって当時は少なかったので、現場で触ってもらえるうれしさは特に大きかったかもしれません。

大変だったことはやはり、障害対応ですね。デジタルサイネージもそうですが、Web業界って24時間誰かしら遊んでくれる人がいるので動き続けます。特に、障害事象は夜に起こることが多いんですね。日またぎの処理をやっている関係だったり、人が夜に向けて集中していくこともあったり。深夜に連絡が来て、そこから調査してどうやってリカバーしていくか、朝まで対応することは大変でした。

――それは大変でしたね……とはいえ、厳しい環境で様々な技術を蓄積されたと思うのですが、どんなものがあったのでしょうか。

的野 あらゆることをやりました。当時はPerlとかPHPが主流だったんですが、エンジニアから入ってサーバーも構築するようになってからはインフラも見るようになって。仕事がない時は飛び込み営業もしましたし、障害が起きている所の保守運用と実際のメンテナンス、バージョンアップの対応も。メンバーが少ないので外注を探したり、そのコントロールであったり検収・納品だったり、そういう所もやっていました。

――本当に、ありとあらゆることですね。

的野 幅広かったです。ちょうどその頃、iPhoneが出たので「とりあえず買って開発しようぜ!」ってノリで開発したり。ネイティブというか、クライアント側のコードを学べたりしました。エンジニアとして経験すべきことはほぼほぼ経験し、フルスタックでできるようになりましたね。

とはいえ、知らないことはまだまだ多いですよ。エンジニアの世界って新しいものがどんどんできてきますし、日々勉強ですね。

「環境依存以外のバグを出すな」

――今後、こういうエンジニアになっていきたい、という理想像はありますか?

的野 技術的にはメンバーに負けない、教えられるようなスキルを保ちつつ、サポートしなければならない時はコードも書けるようなエンジニアですね。いつでも現場に戻れるマネージャーでありたいと思っています。

――マネジメントの仕事の合間にも、勉強は欠かしていないという事なんですね。

的野 勉強を欠かさないというよりは、Pull requestのコードレビューだったり、設計のレビューに入ったりはしているので、そこでメンバーから新しい技術の情報交換をさせてもらってますから、新しい情報は日々入ってきますね。

――エンジニアの方って、どちらかというとマネジメントをする事に対して前向きじゃない方が多かったりします。今のところ「現場に戻りたい」という強い思いはなかったりしますか?

的野 どうですかね……「コードを書きたい」という思いはありますが、若い人たち、新しい技術を持ってくる人たちにはどうしても劣るという自覚はあります。

そこに対して、自分がどうアプローチしていけるか。今だったら例えば昔ガチガチで設計していたところがアジャイルになってきていて、テストが弱くなっていたり設計が弱くなってきているところがあるので、そこをどううまく回して運用的に問題ないレベルに持っていくか。そういうところでしょうか。

――コードを書くことにこだわりは持ちつつ、全体最適化にフォーカスされてらっしゃるんですね。

的野 最悪、自分がコード書けば終わるよ、って感じですね。

――伺った感じだと、マネジメントにすごく向いてらっしゃる印象があります。続きまして、業務を行なう上で大事にしているモットーや好きな言葉があれば教えてください。

的野 昔の会社の社長からよく言われた言葉に、「環境依存以外のバグを出すな」があります。設計したら、コードを書く前に机上デバッグしろというものですね。自分が考えているコードを机の上で動かして、そこで詰まったりバグが起きたら、それはバグのコードだよ、と。

「コードを書くのは作業、設計するのが仕事だ」と教わりました。設計した段階で、システムにバグがあるかどうかは分かっているはず、ゆえに「バグには環境依存のものしかない」ってことですね。一生懸命考えて仕事をして、あとは作業に落としていきたいところです。

難しいですけどね。今はそこになかなか時間を割けないですし、考えないといけない幅というのが昔と比べて広がっている部分もありますから。抜け漏れは現場に指摘してもらいつつ、こちらも考えられるところは全部考えて出すので。

――ありがとうございます。続きまして、ご自身の成長のために日々行なっていることがあれば教えてください。

的野 勝手に入ってくるものが多いんですが、いろいろなメディアの情報が飛び込みやすいようメルマガを購読したり、LINEなどのタイムラインを見たりはしています。

特にガジェット系や技術系の情報は好きですね。新しいゲームだとか、最近だとGoogleのPixel 3aだったりとか、twitterだったらセキュリティ関連の情報には気を配っています。

失敗してもいいよ、責任は僕(上司)が持つから

――ここからは、的野さんが働く上で大切にしていることについて、「事業内容」「仲間」「会社愛」「お金」「専門性向上」「働き方自由度」の6つの項目から合計20点になるよう、点数を振り分けていただきます。

・専門性向上 5

自分自身がいつでも現場に戻れるよう、専門知識は持っておきたいです。メンバーに新しいことを伝えたり、言語特性を踏まえて「こうやったらまずい」というサポートをしたり、「こう作るならバックエンドはこうしておきたい」とか。ここを外してしまうとテクニカルリードとして弱くなると思います。

・仲間 5

自分だけじゃできないことは多いですから。新しい技術にしても自分だけじゃ探しきれない技術や案件は多いです。仲間と一緒に情報収集し、一緒に作り、できあがったものをともに喜びたいと思っています。

・お金 3 

結果としてついてくるものかなと。とはいえ、自分がやっていることに対する評価でもあるので、ある程度は大事にしたいと思っています。

・事業内容 3

大事だと思いますが、そこまでこだわりはないので3にしています。

・働き方自由度 2

私自身管理職であり、会社としてもフレックスを導入しています。ある程度自由はできているので、そこに対して強く求めることは今はないので2にしています。

リモートワーク等については、あまり前向きな意見は持っていないですね。設計書を書いてあとは開発するだけ、という作業だけなら成立しますが、インターフェースで繋いだり繋ぎこみをしたりという仕事があるので。すぐにコミュニケーションが取れる状態じゃないと難しいところもあります。とはいえ、必要なときはしてもらっています。

・会社愛 2

ないわけではないんですが、会社愛というよりコンテンツとその先にあるユーザーさんに対してのものですね。

――ありがとうございます。最後に、キャリアに悩むエンジニアの方にメッセージを頂けますでしょうか。

的野 弊社に関して言えば、「ONE STEP BEYOND」という考え方があります。新しいものにどんどんチャレンジし、どんどん失敗し、そしてすばやくリカバリーしてくださいという考え方です。失敗してもいいよ、責任は僕(上司)が持つからやっていきなさい、という。そういうトライできる環境は、弊社にはあると思います。

――ありがとうございます。

<了>

ライター:澤山大輔


Forkwell Portfolioは、エンジニア向けのポートフォリオサービスです。
Gitリポジトリを解析して、あなたのアウトプットをグラフィカルに可視化します。

Forkwell Portfolioのご登録はこちら!

Forkwell pordfolioバナー