Akatsuki Hackers Lab | 株式会社アカツキ(Akatsuki Inc.)

Akatsuki Hackers Labは株式会社アカツキが運営しています。

アカツキのサーバサイドインターンに参加しました。

こんにちは。シュウと申します。

この度、3/1〜3/31の一ヶ月間、アカツキのサーバサイド就業型インターンに参加しました。

この短い一ヶ月間で沢山のことを体験し、勉強しましたので、実際に取り組んだタスクや所感を共有させていただきたいと思います。

はじめに

自己紹介

私は現在専門学校の三年生で、ゲームプログラミングを専攻しています。台湾で文系の学科を卒業しましたが、昔からずっとプログラミング、特にサーバサイドに興味があり、留学生として今の学校に入って、ゲームのサーバサイドを中心に就職活動をしています。

アカツキの文化や雰囲気、ゲーム業界の実際の現場の仕事を詳しく知るために、今回のインターンに参加いたしました。

インターンの実施内容

今回のインターンは「八月のシンデレラナイン」のサーバサイドインターンでした。私の実際に取り組んだタスクは以下の通りです。

  1. 管理サイトUIの小規模修正
  2. セットアップガイドに対してのフィードバック
  3. 新規ミッションの実装
  4. デバッグ用コマンドラインツールの作成

各タスクの概要は以下となります。

管理サイトUIの小規模修正

デバッグ用にキャラクターを追加する際、選択肢にプレイヤーがプレイできないキャラも混じっていたので、プランナーにとってとても不便でした。そのため、選択肢の中にプレイできないキャラが入らないように改善するという改修を行いました。

セットアップガイドに対してのフィードバック

アカツキには、インターン生や新入社員を対象にして、開発環境をより早く、より便利にセットアップするためのガイドがあります。このガイドの最初のバージョンは、既にセットアップされた開発環境を前提に書かれたものでしたので、何も入っていない状態のパソコンにインストール及びダウンロードするツールについての説明に漏れがありました。

もともと用意されたタスクではありませんでしたが、自分の苦労したところを、今後他の人が再び苦労しないよう、ガイドへのフィードバックを文章化して書いてみました。

新規ミッションの実装

「八月のシンデレラナイン」では、初心者のために、既に様々なミッションを用意していますが、プレイヤーにより沢山のゲームの機能を体験してもらうため、新規ミッションが作られ続けています。

このタスクではそれらのミッションのうち、いくつかの処理を実装しました。

デバッグ用コマンドラインツールの作成

スマホゲームは、クライアントとサーバの通信が多いです。ゲームのデータなどを取得するため、毎回HTTPリクエストをサーバに送り、サーバから戻った応答を解析するのはごく自然なことですが、開発中にサーバに対してデータを送信する際に、毎回特殊な処理をする必要がありとても不便でした。

このタスクの目標は、開発中により便利にHTTPリクエストをサーバに送ったり、レスポンスを受けたりするためのコマンドラインツールの開発でした。

振り返り

ゲームプログラミングを専攻しているものの、今回のインターンを通じて改めて認識及び学んだことは以下の通りです。

ゲーム作りは一人ではできない、「チーム」で!

仕様の確認は、決して自分ひとりで決めることではなく、チームメンバーと確認した上で進めなくてはなりません。また、ユーザーに最高の体験を提供するため、実装された機能を検証する人も沢山います。したがって、コードを書けるだけでエンジニアになれるとは限らず、コミュニケーションも大事だということを実感しました。

意図的にコードを書くこと

学生時代に就職活動用の作品を作っても、実際のプロダクションコードとは比べ物になりません。自分の作品であれば、他の人に自分の書いたコードが分からなくてもあまり気にすることはありませんが、実際の現場でそんなコードを書いてしまうと、チームワークに支障をきたしてしまいます。今回のインターンでは、意図的にコードを書く重要性を学びました。

ゲーム作りにはみんなそれぞれの役割がある

分からないところ、つまっているところ、自分の伝えたいこと、今までの流れや試したこと、可能の解決方法など、自分の伝えたいことをきちんと文章化することは大事です。現場のチームメンバーは忙しく、学校の先生みたいにずっと自分のやっていることをフォローしてくれるわけではありません。

プラスアルファで一歩先を考えること

授業のように、与えられた仕様の通り実装するだけではなく、それぞれ担当する分野を問わず、一歩先を見据え、他の人が考えていなかったことを考えて提案をすれば、チームメンバーの負荷も軽減することができます。

アカツキの文化・環境

風通しがいい

自分の考えと言いたいことを遠慮せずに言えるのはとても素敵で働きやすい環境です。また、インターン生が来る度に、そのインターン生のSlackチャンネルを用意して、問題があっても素早く対応してくれるので大変助かりました。フルリモートインターンなので、参加する前はコミュニケーションがうまく取れるのかどうか心配していましたが、こういう文化のおかげで、一ヶ月間にコミュニケーションの問題は一切ありませんでした。

感情と心を重視しながら、論理性も重視

コードを書く時も、何かを提案する時も、アカツキでは心や感情を重視しつつも、同時に論理性も重視しています。自分の伝えたいことや自分が思うことを文章化するのは大事ですが、自分の考えが理論的に筋が通っているかを考えることも重要だと感じました。

成長しやすい環境

メンターや現場のチームメンバーは、いきなり答えを提示するのではなく、いつもヒントを出しながら、自分で考えて答えを見つけることをサポートしてくれます。こういう環境だからこそ、未知への挑戦も乗り越えることができるのだと思います。

おしゃれ・面白いオフィス環境

「ゲームを作る前に、まず自分たちが楽しく働けるのかどうかが大事」というのを多くの企業も謳っていますが、アカツキのオフィス見学を通じて、アカツキはそういう考えを体現しているなと改めて感じました。プレッシャーがなく居心地がいい、落ち着いている環境でありながらもっとオフィスを面白くするための工夫があちこちに見られます。また、社員たちが持ってきた面白い物が多く、自分の好きな形で自分の席を飾るのも見られたので、とても個性と人が重視されている会社のイメージが強いです。

まとめ

一ヶ月の間にたくさんサポートをいただいて本当にお世話になりました。あまりにも学生としてやっていることと違っており、色々なチャレンジがありました。みなさんのおかげでいろいろなチャレンジを乗り越えて、エンジニアの仕事の醍醐味を感じました。学びを応援する文化だからこそ、一ヶ月間、最初から最後まで楽しくインターンをすることができました!

それに、最後は念願のオフィス見学ができて、正直自分はすごく感動しました!

一ヶ月間、ありがとうございました!