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

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

Akatsuki Games Internship 2022のRuby on Rails / AWS コースに参加しました

自己紹介

同志社大学大学院M1の赤沢聖斗です。大学ではブレインマシーンインタフェースの研究をしており、アルバイトや趣味でWebアプリの開発をしています。

作業内容

今回のタスク内容はお知らせツールの改善というタスクを行いました。

お知らせツールとは?

ゲームでは、開催中のイベントなどをお知らせを通してユーザに表示しています。お知らせツールとはこれらのお知らせを作成するために利用する社内ツールのことです。今回のインターンではそのお知らせツールを使いやすくするように改善しました。

お知らせツールの使い方

簡単にお知らせツールの使い方を説明したいと思います。

お知らせツールでは下記のテキストエリアに、実際にお知らせで表示させる文言を入力していきます。

お知らせの文言を入力するテキストエリア

 

このお知らせツールでは文字の大きさや色を変更するために独自のマークアップ表現を使っています。例えば、下記のように"{size: 50}{size}"などのタグで囲むことで文字サイズや、色などを指定することができます。

お知らせツールでの文字の入力方法

そして、このタグを組み合わせて本格的な文を作ると下記のようになります。

お知らせの例

作業手順

インターンは3週間という短い期間なので、期間内に結果を残せるようにスケジュールを立てました。作業手順としては、

  1. 現状のお知らせツールの課題の洗い出し
  2. タスクの優先順位の決定
  3. お知らせツールのコードを読む
  4. 改善案の検討と実装
  5. お知らせツールを使っている方々にフィードバックをもらう
  6. フィードバックを元に修正
1. 現状のお知らせツールの課題の洗い出し

まず、お知らせツールの使いにくい箇所の洗い出しから始めました。方法としては、実際に自分で使ってみて、使いにくいと感じた箇所の抽出と、実際にお知らせツールを使っている方々にヒアリングを行いました。

課題の洗い出しの様子

ヒアリングした結果下記のような課題が出てきました。

  • 文字の大きさ/色等の独自タグを毎回入力するのが大変
  • マークアップのプレビューがリアルタイムではなく、都度保存しないと確認することができないのが大変
  • 添付画像を検索する際に、今の検索機能だと機能不足で使いにくい
  • 検索結果が重複されて表示されることが稀にあるので不便
2. タスクの優先順位の決定

洗い出した課題から、作業工数や需要をもとに優先順位を決めました。そして、今回のインターンでは「文字の大きさ/色等の独自タグを毎回入力するのが大変」という課題を解決することにしました。

3. お知らせツールのコードを読む

実際に着手する前に、既存のお知らせツールの実装や処理の流れを確認しました。しかし、ファイル数が多くファイルの関係性が複雑だということもあり、直接コードを読むのが難しいと感じたので、miroというツールを使って各ファイルがどのようにつながっているかを可視化しながら読み進めました。

ファイルの関係性をmiroに書き出している様子(一部隠しています)
4. 改善案の検討と実装

お知らせツールの文字の入力の利便化を行うためにどのように実装するかを検討しました。今回は、独自タグを挿入してくれるボタンを用意することが一番楽に課題を解決することができ、使いやすいのではないかと考えました。

そして、ボタンを配置するためにJavaScriptを使って既存のDOMに対してボタンの追加や修正を加えて、CSSを使ってスタイルを整えました。下記に記したものがお知らせツール第一号です。テキストエリアの上部にタグを挿入するボタンとプルダウンメニューを配置しました。

お知らせツール第一号(一部隠しています)
5. お知らせツールを使っている方々にフィードバックをもらう

次に、改善したお知らせツール第一号に対して、実際に普段使っている方々にフィードバックをいただきました。フィードバックでは、こういうボタンが欲しいなどの要望や、改善することに対して感謝の言葉などをいただくことができました。

フィードバックの様子(一部隠しています)
6. フィードバックを元に修正

最後に、頂いたフィードバックをもとに修正を行いました。今回のインターンで改善することができなかった課題はまだ残っているので、今後もサーバーチームでツールの改善を継続する予定です。

修正版お知らせツール(一部隠しています)

インターンで心掛けていたこと

今回インターンをするにあたって、心がけていたことを紹介させていただきます。

slackに自分の作業ログを残す

フルリモートでの作業だったので、メンターさんに自分が何をしていたのか、何で詰まっているのかが把握しやすいように、独り言のようにslackのチャンネルに作業内容などを投稿していました。

ユーザー目線での開発

今回はお知らせツールの改善をおこなっていたので、お知らせを作成する方々がユーザーとして、どのように実装したら使いやすくなるのかということと、ヒアリングやフィードバックでは色々と意見が引き出しやすいように資料を作成するなどの準備を行いました。

余裕を持って作業

インターン期間の終了直前に焦らないように、スケジュールを立てること。先にできることは着手し、余裕を持って作業をすることを心がけました。

まとめ

今回のタスクでは、オンラインでの作業、異なるチームとのコミュニケーションが必要ということもあり、非同期のコミュニケーションが増え、欲しい情報をすぐに得ることができないということの難しさを感じました。しかし、いろいろな方にサポートしていただけたおかげで、目標としていたところまでの作業ができました。

また、アカツキゲームスで実際に働いてみて、個人の裁量権が多く、自由度が高いという印象でした。さらに、技術のレベルが高く、すごく良い環境だと感じました。本当に学ぶことが多く、あっという間にインターンが終わってしまいました。短い間でしたが、ありがとうございました。