Gunosy Tech Blog

Gunosy Tech Blogは株式会社Gunosyのエンジニアが知見を共有する技術ブログです。

Gunosy に入社して半年経ちました

はじめに

この記事は Gunosy Advent Calendar 2022 の 17 日目の記事になります。 16 日目の記事は、hyamamoto さんの『家造りとソフトウェアエンジニアリング』でした。

こんにちは、広告技術部の fujishiro です。最近はボクシングの井上尚弥選手の 4 団体統一戦を配信で見て、格闘技観戦に興味を持ち始めています。

さて本記事では、自分が Gunosy に入社して半年経ったのでその中で感じたことを紹介したいと思います。 ちょっとした読み物として読んでいただければ幸いです。

入社以前のバックグラウンド

私は、前職では主に PHP と React を使った開発をおこなっていました。AWS も少し触ってはいたものの、主にコンソールからの EC2 の運用をしており、IaC などに関しては、ほとんど知識がありませんでした。

入社後のタスク

私が所属している広告技術部では、主に広告配信 API サーバーと広告入稿管理画面を管理しています。広告配信 API は、Golang で書かれており、広告入稿管理画面は Ruby on Rails と React で書かれています。

また、広告配信 API サーバーと広告入稿管理画面のどちらも EKS 上で動いており、Terraform でのインフラの管理や Kubernetes のマニフェスト管理も広告技術部で管理しています。

初めのオンボーディング期間では、主に広告入稿管理画面の React × JavaScript で書かれていたコードを同じ React × TypeScript に書き換えるタスクをおこなっていました。 React は前職で触っていたので、理解することはそこまで難しくなかったのですが、TypeScript は初めてだったので、書き換えるのにかなり苦労した記憶があります。

その後はチームメンバーに都度質問をしながら、以下のようなタスクをおこなってきました。

  • 広告配信 API サーバーの改修
  • 広告入稿管理画面のフロントの React 化モブプログラミング
  • EKS のアップグレード
  • Istio のアップグレード
  • 他チームと連携しながらcssでデザイン調整

正直まだまだ大半のことはわかってないのですが、それでも入社以前に比べると触れるタスクの幅が広がってきていて、徐々に理解が点だけだったものが線になってきているのではないかと感じています。

入社後に感じたこと

ここからは私が Gunosy で働いてみて感じたことを 3 つほどご紹介します。

1. さまざまなことに挑戦ができる (技術の幅が広がる)

広告技術部では開発手法としてスクラム開発をおこなっているのですが、スプリント中にあるタスクの中から自分がやってみたいタスクを自分自身で選べるので、興味のある技術に挑戦することができます。

そのため、今回のスプリントでは Kubernetes について知識を得るために Kubernetes のマニフェストを書くタスクを積極的に取ってみようといったことや、次回のスプリントでは Ruby on Rails の開発タスクを多く取ってみようといったことができます。

前職まで現在の広告技術部で使用しているほとんどの技術を使っていなかったため、入社直後は新しい技術を学ぶのに苦労しましたが、タスクの取りやすさ、挑戦のしやすさのおかげで少しづつ理解できている感覚があります。

また、広告技術部は扱っている技術の幅が非常に広く、上で説明したようにインフラの管理からサーバーサイド、フロントエンドの開発まで管理している分、タスクをこなしていくことで日々新しい技術、知識を得られている実感があります。私自身、幅広い技術を扱えるようになりたいという思いもあり Gunosy に入社したので、このような環境で働けていることはとてもありがたいです。

2. 質問や相談がしやすい環境が整っている

上で説明した挑戦のしやすさにも繋がるのですが、Gunosy では 1on1 ミーティングが定期的におこなわれており、技術的な質問から、仕事の進め方やチームのことなど、ちょっとした雑談も含め何でも気軽に相談できる環境が整っています。 また、Slack でも気軽にチームメンバーに質問したり、必要であれば Slack のハドルの機能を使って相談をしたりすることができます。

入社当初は Kubernetes に関して全く仕組みがわからない状態でしたので、1on1 ミーティングで相談をしたりする中で、Kubernetes マニフェストを書くタスクを振ってもらったり、EKS のアップグレードのタスクを勧めていただいたり、またそのタスクを進める中でチームメンバーに質問をしたりして、理解を深めていっていました。 仕事に対するモチベーションも 1on1 ミーティングで高めることができているので、個人的に非常に助かっています。

ちなみに 1on1 で話したことは Google Docs に日付ごとにメモを残すので、後から振り返りやすく過去ログが追えるので気に入っています。

1on1 で話した内容は Google Docs に日付ごとにメモを残している図
1on1 で話した内容は Google Docs に日付ごとにメモを残している

3. モブプログラミングから得られることが多い

最近はモブプログラミングに参加していることが多く、1 日の大半をモブプログラミングしていたりするのですが、前職にはなかったので、非常に良い経験になっています。

弊社で行っているモブプログラミングに関しては以下の記事に詳しく書かれているので、こちらを参考にしてみてください。

tech.gunosy.io

モブプログラミングに参加することで、自分の知らない知識を他のメンバーから学ぶことができるので、知見を広げられるのですが、特にタイピストの画面を共有しながら進めるので、他のメンバーの開発の仕方や考え方だったり進め方、コードの書き方などが理解でき、「ここはこういう書き方をするのか」だったり、「こうタスクを進めていくのか」などをリアルタイムで見て考えることで自身のスキルアップの助けになっています。

また、普段リモートで開発していると、他のメンバーの画面を見ることがないので、モブプログラミングをした際に他のメンバーの開発環境を画面越しに見れたりするのは新たな発見があったりして楽しいです。

最後に

今回は Gunosy に入社して感じたことについて書きました。 半年経った今でも技術的な知識やスキルはまだまだ不足していて、わからないことだらけなのですが、チームメンバーの方々には日々丁寧に教えていただいているので、より一層学びを深めていきたいと思っています。

明日はかとうさんの「Gunosy コンピテンシーマトリクスを公開しました」です。お楽しみに!