「自分が会社を支えている」──全世界のサービスを支える仕事

article image 1

私は開発本部のサーバー部門に所属していて、国内はもちろん世界で稼働するダーツマシンのサービスを提供することが、最大の任務です。 

具体的に言うと、プレイしたデータをサーバー側で受信して管理して、ユーザーに開示します。プレイデータがきちんと取れていなかったり、結果が出てこなかったりするとユーザーがダーツを楽しむことができないので、正常な稼働を守り、サービスを提供しています。  

以前は「見守る」ことが主な仕事でもありましたが、現在は自動化が進んだこともあり、何かあっても365日24時間、稼働できる「強い仕組み作り」を目指して改善施策を進めています。 

サーバー環境に100%大丈夫、という保障はありません。ですが100%を目指すことが大事で、そのためには常に新しい技術を取り入れることが欠かせません。  

実際、弊社のインフラ周りはほとんどの新しい技術を取り入れていて、他の会社と比べても最先端を走っている環境です。そのため、ネット等で情報を手に入れようとしても難しくて苦労する面もあるのですが、知識を手に入れて業務で活かしていくのはやり甲斐があることなので、常に新しい技術に関してアンテナを張っています。 

たとえば一部サービスにおいて注目を集めているKubernetesを導入し、サーバーレスを実現しています。Kubernetes導入によって運用・保守のコスト削減やコンテナの運用・開発の効率化を図っています。まだ幾つかの課題もありますが、今一番楽しい仕事ですね。

3年ほど前、オンプレミスからAWSへの移行作業を完了しました。当時は初めてのことばかりで苦労をしましたが、その分学びの楽しさもあり、刺激的な作業で自分がさらに成長できた貴重な経験だったと思います。 

サーバーやネットワークは安定稼働が最重要であるため、会社によっては新しい技術に消極的になるケースも多くあります。 ですが我々の方針は、ユーザーに良い体験をしていただくためにも、人材リソースを他に活用していくためにも積極的に新技術を取り入れ、挑戦すること。   

とはいえ、慎重かつ丁寧な姿勢も求められますよ。ダーツライブサービスは日本だけでなく、アジアやヨーロッパなど世界各地に広がっているサービスのため、全世界のサーバーを支える立場としての責任があります。「自分がこの会社を支えている」という感覚は強くありますね。 

そんな気概を持ちながら、一歩一歩、強固なサービスへと近づけていくことが仕事のやりがいだと思っています。

新技術で得られる、エンジニアとしての充実と成長 

article image 2

ダーツライブに入社する前は、サーバー構築とネットワーク運用保守などの仕事を経験しました。前職は金融企業でした。

転職した理由は、新しいことにチャレンジしたいという想いが大きかったから。やはり業種によっては、新しい技術を取り入れることに後ろ向きな企業もあります。エラーが起こることを恐れて、なかなか踏み切れないのでしょうね。

その事情も理解できますが、かなり昔の技術を使って仕事をするとなると、だんだんと属人化してしまうんですよ。この仕事はこの人にしか対応できない、という状況が生じてしまう。それって、会社にとってかなりの痛手です。それに、新しい技術を積極的に取り入れられない環境は、自分にとっても楽しくありませんでした。

そんなときにダーツライブと出会って「楽しそうだな、ここなら成長できそう」と感じ、転職を決めました。実際、当時の自分と今の自分を比較すると、成長したという自覚がありますし、毎年その実感があります。 

なかでも入社2年目の頃、データベースを大きくバージョンアップしたことは忘れられません。 

データベースは、サービスの根底にあるものなので、ここで不具合が起きるとサービスすべてがストップしてしまうもの。もしも、サービスが半日、場合によっては1日停止してしまうとなると会社の信頼は失われてしまいます。そのため、会社の存続をすべて背負うくらいの覚悟で仕事をしました。

大掛かりな作業だったこともあり、すべて完了させるまでに1年ほど時間を要しました。途中、バージョンアップがうまくいかず、このままだとマズイ!と当時の上司と頭を抱えてしまったトラブルがあって……。  

結果、すぐに切り戻し(いったん元の状態に戻すこと。事前に準備しておく)をして復元できたので問題はなかったのですが、あのときは「切り戻しを実行すれば大丈夫」ということすら忘れてしまうほど、動揺して頭が真っ白になりました。

でも、ヒヤリとした経験も含め障害対応を重ねるほど、クリティカルな問題が発生した際にも焦らず「今はこういう策がとれる」と冷静に判断できるようになっていくんですよね。本当に、経験したことすべてが貴重な経験で、成長の糧になっています。

どんなネットワーク障害でも短時間で解決するために

article image 3

ネットワーク業務に関わる上で避けられないのが「障害対応」です。もしかすると、「できればやりたくない」という方もいるかもしれませんが、私にとってはとても充実感のある作業でもあります。

というのも、私たちの仕事は安定したサービスを提供するために不可欠なのに、普段はその成果が見えにくい。自分の仕事の成果を目に見える形で提供する機会も、あまりないんです。

もちろん、障害が発生しないことが一番です。ですが起きてしまった際に的確でスピーディーな対応ができれば、すべてにおいてプラスですし、自身の能力を活かせる場面でもあります。そのため、使命感にかられるのだと思います。

だからこそ、障害対応には普段からかなり気を遣っていますし、こだわりもあります。 

弊社の場合、何かトラブルが発生するとサーバー部門の担当者に順番に連絡が入るようになっています。ダーツは夜に稼働率が高くなる傾向があるので、深夜に電話がかかってくることもありますが、そんなときにイチから対応するようなことはしません。

すぐに復旧できる仕組みを事前に準備してあるので、それを実施するだけ。早いときは10分で対応は完了です。後日、調査をした上で原因を究明していきますが、障害が起きた時点で大切なのは「いかに素早く検知をして、対応できるか」なんです。

障害によって数時間もサービスが停止してしまうという状況は、あらかじめ備えておくことで回避できることも多いはずだと考えています。

普段の業務の中でも、最悪の事態や大障害を想定して別の仕組みを取り入れたり、新しい技術を身につけて試してみたり、できることはたくさんあります。

障害が起きないように全力を尽くしながらも、障害が起こる前提で普段から動いていく。  そういう心構えと準備ができていると、実際に何か起こっても対応できることは多いですし、万が一何かしらの障害が起きてしまった際に想定通りに復旧できたら、心の中でガッツポーズができるのです。

世の中でも数少ないフルスタックなエンジニアになれる

article image 4

あらためてダーツライブという会社は、ネットワークとサーバーといったインフラ全般の多様な知識と技術を得られるうえに、さまざまな経験が積める環境なので、課題への対応能力は格段に高くなると感じます。

トラブル発生時に、どちらの領域からもアプローチできることは、エンジニアとしてかなりの強みです。ネットワーク面からもサーバー面においてスキルを磨けますし、俗にいうフルスタックエンジニア、最近でいうとクラウドエンジニアになれる職場です。

どちらかのみに精通している部署構成の会社の場合は、課題に対して双方から担当者が集まって解決策を探っていきます。ですが弊社の場合は一人でその役割を担えるので、スピード感も議論の深度も格段に変わってくるのです。

今後の目標としては、自分が持っている知識をチームに供給して、誰もがその技術を身につけられるようにしていきたいと考えています。

知識と技術をお互いに伝達して共有していれば、リソースをうまく使うことができますし、仕事の効率も良い。そのために、社内で勉強会なども開いています。結構がっつり、学校の先生のようにハンズオンで週に1度、2時間ほど開いていますね。

自分の知識を周りに教えるということは、自分の手の内を明かすことでもあるので「私の旨みがなくなるな……」など思うこともありますが(笑)。私自身も勉強する必要が出てくるので、良い刺激になっています。

新しい技術を取り入れ、共有することを互いに繰り返していくことで、チームのレベルは向上します。みんなで技術を身につけて知識を蓄積させて業務を効率化する。そうやってできた時間とスキルがあれば、個人として充実した人生にもなりますし、新しいアイデアを生み出すこともできるので、事業も発展していくと思っています。

楽しみながら学んで成長していける組織を目指して、これからも私自身が学び、挑戦し続けていけたら最高だなと考えています。