見出し画像

グリモアのことが大大大大大好きな学生アルバイトの話


この記事は「GRIMOIRE アドベントカレンダー2021 ODD」の8つ目の記事です

今回の記事はグリモアの天網チーム所属のハチおじが担当します。
エンジニア歴1年のひよっこなので技術的なことは全く書けませんが、学生アルバイトならではのお話をいたします。
よろしくお願いします!

自己紹介

2020年10月に学生アルバイトとして入社しました、物理学科所属の大学生です。現在は大学4年生で、絶賛卒業研究のようなものに取り組んでいる真っ最中です。

社内ではサーバーサイドのAPI開発や、業務で用いる管理画面の機能実装などを担当しています。

大学での専攻

大学では物理学を専攻しています。

3年次までは物理学の基礎分野(物理数学・古典力学・電磁気学・熱力学・統計力学・量子力学etc…)の勉強をしていました。

4年次になってからは、卒業研究のようなものとして、"実験装置を制御するソフトウェアの置き換え・カスタマイズ作業"をしています。

なぜ物理からエンジニアに?

理学部出身の学生は、多くの人が修士課程まで進んで就職したり、博士課程まで進んで研究者の道を歩んでいくと思います。
私は1年浪人しているのですが、浪人期に通っていた予備校で物理学の面白さを知り物理が大好きになり、博士課程まで進んで研究者になり物理で食べていく気満々でした。

これから自分が進んでいく道を考え直したのは、2年の後期が終わり春休みに入った2020年の3月頃でした。
私は物理や数学といった学問を学んで体系的に理解することは大好きだけど学問を発展させることにはあまり興味がないということに気づき、このまま大学院に進んで研究者を目指しても楽しめないだろうなと思うようになりました。
また、大学院まで進むとそれなりに学費がかかるという点も、研究者の道を離れる理由として大きかったです。

そこで、アカデミックな分野は学士までとして、自分にあった職を探すようになりました。

  • プログラミングについては大学の授業でほんの少しだけC言語に触れたけど楽しかった

  • 技術を学んで体系的に理解することが仕事にダイレクトに紐づいている気がして楽しそうだった

という理由から、エンジニアとして就職しよう!という考えに至り、Ruby等の勉強を始めました。

ある程度の勉強を終えて、

  • 実際に仕事としてどのようなことをやるのか経験してみたい

  • 仕事としてやってみて本当に楽しめるのか確認したい

という思いからRubyを使っている企業の求人を探して応募したのがグリモアとの出会いでした。

グリモアの採用制度については以下の記事にまとまっています。


入社してから経験したこと

まず前提として、週4日(長期休暇時は週5日)出社してゲーム開発に携わっています。

入社1ヶ月目

最初の1ヶ月は主に管理画面を触っていました。
機能実装というよりも、実際に業務で使われているRubyやRailsに触れて慣れ親しむという要素が大きかったです。
初めて業務で使われているコードに触れて、テーブルの数やコードの長さに圧倒されていた私にとって、少しずつ簡単なことからやらせてもらえたのはとてもありがたかったです!

入社2ヶ月目以降

Ruby や Rails に慣れてきた頃、思い切って次バージョンのアプリ側の機能開発に挑戦したいことを開発チームに相談し、チャレンジできることになりました!
アプリで使っているAPIに初めて触れたのですが、当然の如く何をしているのか理解しきれない部分が多く困り果てていました。
しかし、 APIが仮のデータを返すようにメンターの方が先んじて下準備をしておいてくれたおかげで、そのコードを足掛かりにして読み進めていくことができ、無事に実装を終えられました。
初めて実装した機能がアプリでリリースされたのはとても嬉しく、また初めての実装を手厚くサポートしてもらえたことがとてもありがたかったです!
それ以降のバージョンアップにも積極的に関わらせてもらっています。

直近でやったこと

つい最近大きめのバージョンアップがあったのですが、テーブル設計や新規APIの作成、既存機能の改修等のほとんどをやらせてもらえて、とてもいい経験になりました。
もちろん私一人で全て考えたわけではなく、特にテーブル設計はかなり悩んだので何度もメンターの方に相談しつつ実装を進めていきました。
「やりたい!」と言ったことは何でも挑戦させてもらえるのでとてもやりがいを感じています!

開発以外

また、メンターの方に限らず、学習についてかなり手厚くサポートしてくれるので大変ありがたいです!

  • サーバーサイドの開発をスムーズに進めるようにするため、Unityの基礎的な使い方を約1ヶ月の間、毎日30分〜1時間ほど教えてもらい理解が深まった

  • AWSについての勉強会を開いてもらえて、1から学ぶことができた

  • ミーティングで何の話をしているか理解できなかったとき、別途時間を確保してミーティング中に出てきた単語や話題について細かく解説してもらえた

  • 業務遂行をサポートするslackチャンネルがあるのですが、困っている事象を投稿したらすぐに拾って助けてもらえた

などなど、業務を進行する上でのサポートに限らず、まだまだ何も知らない私の学習面でも大変お世話になっております。

正社員選考について

なぜ選考を受けようと思ったか

タイトルにある通り、私はグリモアのことが大大大大大好きです!
なぜかというと、ここが自分の居場所なんだと強く感じるからだと考えています!

  • 自分の趣味嗜好を隠さずオープンにできる

    • グリモアの皆さん自身がとてもオープンな方が多いので、こちらも後ろめたく感じることなく曝け出すことができる

  • 自分の意見をはっきりと主張できる

    • 「学生のくせに生意気な!」というような態度は一切とらず、対等な一人の人間として議論してくれる

  • 色々なことに挑戦できる

    • 声を拾ってもらいやすく自分が活き活きとしていると実感できる

居場所だと感じること以外にも、グリモアのことが大大大大大好きな要素はたくさんあります!

  • 社長が掲げる目標・見据える未来を聞くととてもワクワクしてくる

    • この目標達成に自分も貢献したいと感じる

  • こんな人達と一緒に仕事がしたいと強く感じる

    • 強烈な個性を持つ面白い方がたくさんいます!

  • 学びや生活の環境が整っている

    • 生活面で困っていても、人事の方に相談しにいくと秒で対応してくれる

  • ハロウィンや懇親会、魔術学園(社内カレッジ)等のイベントがたくさんある

  • お昼休みや退勤後にゲームをしてチームで戦いに行く

  • 人事の方が定期的にアイスを補充してくれる(1個50円〜100円)

  • 近くに美味しいつけ麺屋がある

などです。

これらの理由から、自分の居場所だと強く感じるグリモアで卒業後も働きたいと考えるようになりました。中二病の方々の居場所を作るための一役を担いたいと決心し選考を受けることにしました。

選考フローについて

選考の具体的な流れとしては、

  • 月1で人事の方と面談をしていて、その中で選考を受けるかどうかの話が上がった

  • 「選考を受けたいです!」と伝えたところ、社長・メンター・人事の方を交えたランチを設定してもらえた

  • ランチでは、「最新の技術や最新のゲームに精通していて、かつ開発をしていく上で様々な仕様の漏れ等を防げる"最後の砦"としてのエンジニアになれるか」といった覚悟を問われた

  • 運を引き寄せるような人間であることが求められたので、じゃんけんで勝ったら内定を出すと言われた

  • 見事じゃんけんで勝てたので内定をもらえた!

という感じでした。あのじゃんけんで負けていたら内定をもらえるか本当に怪しかったと思うので冷や冷やしました…

何を学んだか

約1年間開発を経験していく中で、色々と気づき学びになったことがあります。
それをいくつかご紹介させていただきます。

状況を事細かに伝える

まず何よりも、メンターの方や同じチームの方に事細かに状況を共有するのが大事だと感じました。
朝会では「今日は〇〇を進めようと思っています」「できれば△△まで終わらせたいです」と共有したり、
夕会では「今日はここまで進みました」「残作業は〇〇です」「明日は△△をやろうと思っています」と共有したり、
困っていることがあったら「ここの部分が理解できないのですが、どうなっているのでしょうか」「いい解決策が思い浮かばないのですが、どうしたら良いでしょうか」「こんな感じで進めてみようと思うのですが、方向性は問題ないでしょうか」と相談したり、
状況を事細かに伝えるからこそこちらの状況をメンターの方が常に把握することができて、状況を把握できるからこそ安心して色々なことに挑戦させてもらえるのだろうと感じました。

お互いの認識がずれていないかすり合わせる

APIの開発ではクライアントエンジニアやプランナーと連携して実装を進めていかないといけないし、管理画面の機能実装では要望を正確に把握した上で実装を進めていかないといけません。この時、言われたことをただこなすのではなく、"相手が達成したいこと"を聞いたり、"自分にとって都合の良いこと・悪いこと"を伝えたりすることで、お互いの認識がずれていないかすり合わせることが大事だと感じました。

これを行うことで、

  • 不具合や意図していない挙動の原因になること

  • 優先度が低いにも関わらず工数が重い作業を進めてしまうこと

  • 無駄な実装になってしまうこと

という残念な結果を回避できる場合があると思いました。

既存のコードを読んで模倣する

まず単純に、既存のコードは長年エンジニアをされている方々の叡智の結晶なので、自分の知らない書き方やうまく負荷を減らす方法などがたくさん詰め込まれていてものすごく勉強になりました。

また、自分が追加しようとしている機能は既に実装されていることも多々あるので、コードを読んでおいたり探しながら実装することで車輪の再発明を避けることができると思いました。

さらに、既存のコードの書き方を模倣して書き進めることによって、プロジェクトでの共通認識のようなものを把握することができ、後からコードを読む人が格段に読みやすくなると思いました。(逆に既存のコードとはずれた書き方をしてしまうと、読む時にものすごく理解しづらくなったり誤解を招いたりするので注意が必要だなと思いました…)

これからしていきたいこと

学生アルバイトとして入社して約1年間サーバーサイドの開発を経験してきましたが、「ネットワーク障害が発生していた時に自分も力になれたら…」「クライアントの開発もできたら開発チームの負担を減らすことができるのに…」というように自分の力不足を嘆くこともあったり、単純に「もっと色々なことに挑戦したい!」「あれも面白そう!これも面白そう!」というようにAPI開発や管理画面の機能実装以外もやりたい欲がどんどん高まってきているので、

  • Unityの勉強をしてクライアントサイドの開発もできるようになる

  • ネットワークやAWS等の勉強をしてインフラもいじれるようになる

という次の目標を掲げています!
大学からの帰宅後や土日にUnityの勉強をし始めたところなので、卒業して正社員になる頃にはクライアントサイドの開発でもバリバリ活躍していけるよう頑張ります!

最後に

ここまでお付き合いいただき、本当にありがとうございます!

ということで、グリモアは一緒に【中二病を救う】側になってくれる仲間を大大大募集中です!

少しでも当社に興味を持って頂けましたら、是非とも下記の採用サイトを御覧ください!


読んでくださりありがとうございま――…… え?さぽーと…?いやいやいや!そんな恐れ多いですよ!でも、サポートいただけると、ゲーム開発が少しだけ楽になるかも…… あ!ごめんなさい、独り言ですっ!えへへへ……