自己紹介
同志社大学大学院M1の赤沢聖斗です。大学ではブレインマシーンインタフェースの研究をしており、アルバイトや趣味でWebアプリの開発をしています。
作業内容
今回のタスク内容はお知らせツールの改善というタスクを行いました。
お知らせツールとは?
ゲームでは、開催中のイベントなどをお知らせを通してユーザに表示しています。お知らせツールとはこれらのお知らせを作成するために利用する社内ツールのことです。今回のインターンではそのお知らせツールを使いやすくするように改善しました。
お知らせツールの使い方
簡単にお知らせツールの使い方を説明したいと思います。
お知らせツールでは下記のテキストエリアに、実際にお知らせで表示させる文言を入力していきます。
このお知らせツールでは文字の大きさや色を変更するために独自のマークアップ表現を使っています。例えば、下記のように"{size: 50}{size}"などのタグで囲むことで文字サイズや、色などを指定することができます。
そして、このタグを組み合わせて本格的な文を作ると下記のようになります。
作業手順
インターンは3週間という短い期間なので、期間内に結果を残せるようにスケジュールを立てました。作業手順としては、
- 現状のお知らせツールの課題の洗い出し
- タスクの優先順位の決定
- お知らせツールのコードを読む
- 改善案の検討と実装
- お知らせツールを使っている方々にフィードバックをもらう
- フィードバックを元に修正
1. 現状のお知らせツールの課題の洗い出し
まず、お知らせツールの使いにくい箇所の洗い出しから始めました。方法としては、実際に自分で使ってみて、使いにくいと感じた箇所の抽出と、実際にお知らせツールを使っている方々にヒアリングを行いました。
ヒアリングした結果下記のような課題が出てきました。
- 文字の大きさ/色等の独自タグを毎回入力するのが大変
- マークアップのプレビューがリアルタイムではなく、都度保存しないと確認することができないのが大変
- 添付画像を検索する際に、今の検索機能だと機能不足で使いにくい
- 検索結果が重複されて表示されることが稀にあるので不便
2. タスクの優先順位の決定
洗い出した課題から、作業工数や需要をもとに優先順位を決めました。そして、今回のインターンでは「文字の大きさ/色等の独自タグを毎回入力するのが大変」という課題を解決することにしました。
3. お知らせツールのコードを読む
実際に着手する前に、既存のお知らせツールの実装や処理の流れを確認しました。しかし、ファイル数が多くファイルの関係性が複雑だということもあり、直接コードを読むのが難しいと感じたので、miroというツールを使って各ファイルがどのようにつながっているかを可視化しながら読み進めました。
4. 改善案の検討と実装
お知らせツールの文字の入力の利便化を行うためにどのように実装するかを検討しました。今回は、独自タグを挿入してくれるボタンを用意することが一番楽に課題を解決することができ、使いやすいのではないかと考えました。
そして、ボタンを配置するためにJavaScriptを使って既存のDOMに対してボタンの追加や修正を加えて、CSSを使ってスタイルを整えました。下記に記したものがお知らせツール第一号です。テキストエリアの上部にタグを挿入するボタンとプルダウンメニューを配置しました。
5. お知らせツールを使っている方々にフィードバックをもらう
次に、改善したお知らせツール第一号に対して、実際に普段使っている方々にフィードバックをいただきました。フィードバックでは、こういうボタンが欲しいなどの要望や、改善することに対して感謝の言葉などをいただくことができました。
6. フィードバックを元に修正
最後に、頂いたフィードバックをもとに修正を行いました。今回のインターンで改善することができなかった課題はまだ残っているので、今後もサーバーチームでツールの改善を継続する予定です。
インターンで心掛けていたこと
今回インターンをするにあたって、心がけていたことを紹介させていただきます。
slackに自分の作業ログを残す
フルリモートでの作業だったので、メンターさんに自分が何をしていたのか、何で詰まっているのかが把握しやすいように、独り言のようにslackのチャンネルに作業内容などを投稿していました。
ユーザー目線での開発
今回はお知らせツールの改善をおこなっていたので、お知らせを作成する方々がユーザーとして、どのように実装したら使いやすくなるのかということと、ヒアリングやフィードバックでは色々と意見が引き出しやすいように資料を作成するなどの準備を行いました。
余裕を持って作業
インターン期間の終了直前に焦らないように、スケジュールを立てること。先にできることは着手し、余裕を持って作業をすることを心がけました。
まとめ
今回のタスクでは、オンラインでの作業、異なるチームとのコミュニケーションが必要ということもあり、非同期のコミュニケーションが増え、欲しい情報をすぐに得ることができないということの難しさを感じました。しかし、いろいろな方にサポートしていただけたおかげで、目標としていたところまでの作業ができました。
また、アカツキゲームスで実際に働いてみて、個人の裁量権が多く、自由度が高いという印象でした。さらに、技術のレベルが高く、すごく良い環境だと感じました。本当に学ぶことが多く、あっという間にインターンが終わってしまいました。短い間でしたが、ありがとうございました。