1
/
5

クラスター株式会社 インターン体験談

概要

VR ライブで有名なクラスター株式会社に1ヶ月ほどインターンで参加してきました。この記事ではインターンを通して学んだことや、感じたことについて振り返ってみようと思います。(この記事はクラスター社内に残していった「cluster.インターン感想」の内容を公開しても良さそうな感じに修正したものになります)

目次

・入社した経緯

・やったこと

・学んだこと

・インターンの感想

・最後に

入社した経緯

自分は元々 AWS のサーバレスに興味があり、Go + Lambda の構成でサービスを開発してみたいと思っていました。(サーバレスに興味があったのはサーバの保守が必要ないんだ!っていう安易な思い込みからの興味でしたが、クラスターのバックエンドエンジニアである kyokomi さんが自分の幻想を破壊してくれたので、今ではそこまで興味がありません)

そこで、前々から興味があった Go を本格的に学びたいと感じ、何か Go のインターンに参加してみようと思っていたところ、 Twitter の知り合いからクラスターのインターンを教えて頂いたので応募しました。

自分は「#学生LT」という学生コミュニティを運営しており、このコミュニティで行われたバーチャルLT会でクラスター社のプロダクトであり、VRルームを手軽に作成出来る cluster を利用していたので、インターンも楽しめそうという思いもありました。

やったこと

インターンに参加する前、自分は Go を書いたことが無かったので予めクラスターのエンジニアさんに教えてもらった Go の教材を幾つか読みながら学びました。

実際に学んだことについては GitHub にまとめてあるので、良かったらご参照下さい。

インターンは 1 ヶ月間だった為こなせたタスクはわずか 7 つでしたが、それでも自分にとっては非常に多くのことを学ぶことが出来ました。やったことの詳細はほとんど書くことが出来ないので、ぼかしながら箇条書きしていこうと思います。

・ログ周りのライブラリ修正

・webのOGP周りの修正

・バックエンド (Go) 周りの機能追加

・バリデーション関連の変更

・公式サイト周りのあれこれ

・セキュリティ周りの機能追加

・HedlessCMS の調査

学んだこと

クラスターでは VR アプリケーションの開発についての全体像を学ぶことが出来ました。また、DB周りについての理解度を上げたり、システムアーキテクチャについての学びを得たりすることも出来ました。

VR アプリケーションの開発については、全体のアーキテクチャや使用しているライブラリ、品質向上について考えなければならないこと等を学びました。

DB 周りについては、普段感覚で行っていた DB 設計についてやトランザクションのロックについてと、ちょっと長めの SQL の書き方や考え方について学びました。DB 周りは元々苦手意識があり、深く勉強するのを避けてきた分野でしたので、今回のインターンで初心に帰って学ぶことが出来て本当に良かったです。

システムアーキテクチャについては、美しい DomainModel についての考え方や、Mapper を使ったデータ形式に対する依存の解消方法について学ぶことが出来て、自分の中で考えていた美しいコードの書き方により磨きをかけることが出来た気がします。クラスターのバックエンドで採用されているアーキテクチャは CleanArchitecture に近いイメージで、ちょうど自分が学んでいたアーキテクチャだったのでより学びに繋げることが出来ました。(実際は OnionArchitecture と言っていたような...? 上手く違いをイメージ出来ていない)

他にも、HeadlessCMS の調査というタスクを担当していたのですが、そこで初めて HeadlessCMS という物の存在を知ることが出来ました。HeadlessCMS の調査では情報収集の仕方や、上手な情報整理の仕方について学べたと思います。

技術以外にも、提案する時に重視すべき観点についても学びました。

提案する時に重視すべき観点については、クラスターのエンジニアである 溝口 さんから多くのことを学ばさせて頂きました。具体的には、「提案の候補を複数用意して、それぞれのメリットとデメリット、リスクを比較しながら話す」ということや、「文章で伝えるより直接話したほうが早いときもある」、「話す時に何を話にきたかを考えておくと良い」といったことを教わりました。自分はチームで何かを開発した経験がまだまだ少なく、今回のインターンでは技術以外にチーム開発についても学ぶことが出来たのが自分にとって大きかったと考えています。

インターンの感想

人生初の Go インターンでしたが、Go とじっくり向き合うことが出来て非常に有意義な時間でした。
今まで主に書いてきたコードは Ruby と Scala でしたが、Go は Ruby ほど危険でも無く Scala ほど難解 (※個人の感想です) でも無いちょうど良い言語だなぁという印象を受け、コードを書いていてとても楽しかったです。

また、プロダクトに真剣に向き合ってる社員の方々と一緒に仕事が出来てとても刺激的に感じました。仕事に真剣な一方、毎日行われているアイスブレイクでの大喜利大会や、有志が集って行うポーカーや麻雀等には全力で遊びに振り切ってて居心地が良かったです。

自分はインターン中に cluster を利用してライブを行った VTuber である「虹河ラキ」というキャラクターが好きなのですが、たまに仕事をしながら「自分の書いたコードが大好きなラキちゃんの為に使われるのかぁ」と考えてとてもやる気が出た時もありましたし、単純に普段利用していたプロダクトに貢献出来たことに喜びを感じていました。

クラスターのインターンはとても楽しく、めちゃめちゃ多くの学びを得ることが出来て良かったです!

最後に

クラスターの社員のみなさんには感謝の気持ちでいっぱいです。

特に、1ヶ月間ずっと面倒を見て下さった kyokomi さんには本当に感謝に堪えません。

Go 未経験だった僕を雇って下さり、本当にありがとうございました。

1 いいね!
1 いいね!