👻

サイバーエージェントの新卒エンジニア1年目が配属1ヶ月で学んだこと

2024/06/24に公開

こんにちは、一人外飲みにまだ抵抗があるが家ではガンガン飲んでるみっちーです。今回は技術記事みたいな感じではなく、新卒ML/DSエンジニア1年目が開発チームに配属されて1ヶ月で何を学んだのかをつらつらとストーリーベースで書いていこうかなと思います。

はじめに

この記事を通して、新卒エンジニアの方がこれから新しく開発チームにjoinする時にどのようなことを意識していくと良いのかの参考になれば幸いです。また、この記事ではハード面ではなくソフト面を中心に自分が意識したことを書いていますので予めご了承ください。また、自分の意見を書いているので、事実とは異なった解釈が含まれる可能性があることも予めご了承ください。

目標設計

目標設計の必要性

まずはじめにチームに配属されていきなりプロジェクトにジョインしてガリガリ設計してコード書いてAPI実装して、、、かと思ってたのですが、半年後自分がどうなっていたいのか、その目標を設計するところから始まりました。これは、まあ必然っちゃ必然で中途で会社に入られた方だとめちゃめちゃ優秀なわけですぐにでもプロジェクトに入って事業に貢献してもらいたいわけですが、一方で会社にとって新卒は成長してもらって数年後活躍してくれるような人材を求めているわけです。弊社では、活躍してくれるような人材は「勝手にやって勝手に会社に貢献してくれる人」を指しています。勝手にやる人というのは、オーナーシップを持って仕事するということで、一見すると簡単そうに見えますが、仕事に対してモチベーションを高く持たないとオーナーシップは持てないわけです(オーナーシップを持っていない人は指示待ち人間になり、勝手にやる人ではなくなってしまいます)。じゃあどうやってオーナーシップを持つのかというところで目標設計が出てくるわけです。目標がないと、自分がどうしていきたいのかが分からない→何をやるべきか見つからない→ただ与えられたタスクをこなすだけ→モチベーション低下につながるという悪い方向に進んでしまう可能性が高いです。逆に目標があることで、自分がどうしていきたいか明確化されている→そのために何をやるべきかが明確になる→じゃあ必要なタスクをやろう→オーナーシップの発揮、モチベーションの担保につながるわけです。

自分が設定した目標

自分が配属されたプロダクトは、MLモデルを基盤としたプロダクトでした。そのプロダクトで自分は、会社に貢献しつつ、プロダクトを理解する→プロダクトのシステムの理解を進めるということをまず最初はやろうと考えていました。なので、小さな精度改善が期待できるMLタスクをやってその変更のAPIリリースをやるというのを目標にしました。

よかったこと

設定した目標はとんでもなく自分の成長につながりました。なぜかというと、「精度改善」によって会社に貢献しつつ、コードをいじることになるのでシステム理解も捗るという一石二鳥な効果があったからです。さらに、GCPなどのインフラもプロダクトで使っているのでインフラの知識の習得にもなりました。

目標以外で自分がやったこととして良かったのは、とにかく分からないところを聞きまくるということです。これは新卒ならではの特権だと思うのですが、これの利点としてはまず自分で頑張ってgithubのコードを睨んで理解するよりは、システムを構築した人にこれってなんですか、どういう時に使うんですかというのを聞く方が何倍も早くシステム理解できますし、理解度も違いました。分からないことを知ったかぶりをするというのは本当に致命的な行為だと思います。なんの得もないのでプライドを持っている人は今すぐ捨ててください。損しかないです。

改善点

しかし、反省点もありました(というか反省点の方が自分にとって学びだなと感じたのでここら辺丁寧に書いていきます)。目標設計で、APIリリースを目標にしていたのですが、本来なら1週間前にリリースができたのに伸びてしまったという問題がありました(正確には、リリース可否判断が1週間前に意思決定としてできたのですが、ここではややこしいので一旦リリースにしています)。理由としては、タスクをもっと丁寧にやるべきだったのに早くリリース可否の意思決定したい気持ちが先行してMTをとってはpendingになるというのを繰り返してしまったためです。MT一回行うにもチームメンバーの時間をとってやっているわけですから、本来不必要だったMTを何回もとってしまったのは時間的コスト意識が不足していると言えます。会社にとって従業員の「時間」も立派なコストなわけで、そのコストを無駄に消費してしまったのは会社の貢献とは逆のことをしてしまったなと思ったわけです。じゃあどうすれば良かったのかなのですが、例えばMTを撮る前に自分のトレーナーをやっていただいてる方にこれでいこうと思ってるんですけどどう思いますかなど壁打ち的なコミュニケーションを取ったら良かったのかなと思いました。また、MTをとる前に今一度作った資料を見返して、本当にこれでいいのか常に疑問を持ち続けることが大切だなと思いました。

2ヶ月目以降意識していきたいこと

1ヶ月働いてみての感想ですが、インプットも多く大変なこともたくさんあるのですが、自分が成長している実感を感じ、それが今のモチベーションにつながっています。今後は、自分の成長だけでなくチーム→プロダクト→会社にどう貢献していくのかを考えながら自分の成長に繋げていきたいと思います。

Discussion