入社後の全体研修、エンジニア研修を終えたこのタイミングでインターンでの学びを振り返ってみました。
あいさつ
皆様、こんにちは。2023 年度新卒の中野です。 入社前の 1 月から 3 月までデータテクノロジー開発部の FeedTerminal チーム(以下 FT チーム)にて開発インターンに参加していたのでその振り返りをしたいと思います。
インターンでやっていたこと
FeedTerminalはオプトが提供するデータフィードマネジメントツールです。 配信媒体によって異なる広告フォーマットに合わせて、商品情報データを自動変換して配信するフィード広告配信ツールで、データ作成・設定をひとつの画面で管理することができます。
現在 FT チームでは開発スタックの大幅な更新があり、自分は新しい方の v2 の開発に参加しました。 開発タスクとしてはバックエンド実装から GCP を使ったクラウドインフラの開発まで幅広く経験をしました。 また、今回のインターンではこれから入社予定の会社での開発の雰囲気を掴むことを個人的な目的としていました。 それもあって、実際の開発ミーティングにも参加させていただきました。
オンボーディング
入社初日は受け入れ先の部長である野口さんと 1on1 を行いました。 その後2週間ほどかけて、開発環境の構築やチームに合流する前に知っておくべき知識のインプットを行いました。 Go 言語や GCP 周りの知識、クリーンアーキテクチャなど自分にとっては初めてのものが多く、全てをインプットし切るのは難しかったです。 そのためまずはチームに入った後プロダクトのコードが読めることを目標に最低限のインプットを行いました。
プロダクト開発チームに合流
ここからは実際のチームに混ざって開発やミーティングを行いました。
ここからメンターは和田さんに交代しました。 実際のタスクから選んでもらったものに取り組んでいく形で開発を進め、時には心構えやコミュニケーションの取り方、開発に関わる背景知識などを学びました(これまで広告業界についてほとんど知らない状態だったため、どういう仕事のためのプロダクトなのかなどを聞いた)。
インターンで得た学び
これまで大学でプログラミングサークルに所属していたり、別の企業でインターンやアルバイトを経験していましたが、それぞれ得るものは大きく違うと改めて感じました。 具体的には以下の通りでした。
- 開発体制、手法(人数だったりミーティングの有無だったり)
- 開発周りで使うツール(GitHub、Docker、CircleCI、Terraform、GCP、プログラミング言語)
- GitHub 上でのマージまでの流れ
- コミュニケーションの取り方
インターンを経験したことによるエンジニア研修への影響
正直にいうと、インターンをしていたから他の人よりも早く進んだとかそういうことは全然なかったです。 一方で、トラブルシューティングやエラーで詰まっている同期のヘルプとして参考情報を検索して提供するなど、スキル面以外での影響はかなり大きかったと感じています。
インターンに限らずエンジニアはチームに入ってがっつりコードを書くのが仕事とイメージする人が多いと思います。 しかし、個人的な考えではありますが、そこだけを目的にしてしまうのはとてももったいないと改めて感じました。 コードを書きつつ、たまには周りを見ながらほんの小さな手助けをしたり、先輩がトラブルシューティングを行う様子を画面共有なり開発ミーティングなりで観察するのも大事だと思ったのが今回のインターンに対する一番の成果だと思っています。
部長、メンターから見たインターンの様子
最後に、今回インターンでお世話になった部長の野口さんとメンターの和田さんにインターンの様子を振り返ってコメントをもらいました。
インターンを受け入れてみてどうだったか?
野口) 正直インターン受け入れは難しい。 3ヶ月週 3 日稼働の人に何をやってもらうかもだし、3ヶ月経ったらいなくなる前提での設計で、和田さんのリソースを割くことにもなるという点の難しさがあった。 ただ FT チームに中野さんが入ったのは思っていたよりも良かったと思う。
和田) そこまで中野さんに時間をかけることもなくタスクをこなしてもらいつつ、できることを探してもらうこともあったのでチームとしても助かったという印象でした。
野口) インターン生というよりは 4 人目のメンバーという扱いをしていたよね?和田さん。
和田) FT チーム にそのまま所属するという野口さんの言葉を信じて普通にタスクを進めてもらっていましたね(笑)。
野口) インターンをしていたチームにそのままジョインする可能性は高いし、今までもそういう傾向はあったので、いずれ正式ジョインする前提で1メンバーとして接して欲しいとチームには依頼した。 実際そう扱っていたし、それが良かったんじゃないですかね。
インターン受け入れの前後でのギャップもしくは予定していた流れとの違いなどはありましたか?
野口) 事前情報ではフロントエンドの仕事をしたいとのことだったが、話してみたら割となんでもできそうだったこともあって最初は ONE's Data チームでの受け入れを予定していたんですよ。 直前まではメンターとなる予定だった牧野さんともそういう会話をしていました。
ただ、何かのきっかけで会話した時に FT チームが受け入れに乗り気で、ちょうどいいタスクもありそうだという流れから FT チーム で受け入れる方針に変わった記憶があります。
和田) どういうきっかけで FT チームで受け入れたかの理由は覚えていないのですが、中野さんに渡せるタスクはあるという状態だったと思います。
野口) いたらいたでやってもらいたいことはあるし、中野さんが入った後にタスクを調整したというよりは、元々あったタスクを中野さんに割り当てたっていう感じですね。 結果的には FT チームに中野さんを入れたのは良かったと思います。 最後の方に渡したタスクなんかはみんな難しいだろうと思っていた中でそれなりの着地をしたので、あの頃の中野さんが僕の期待値を上回った瞬間だったと記憶しています。 なので思ったよりハマったしワークしていたという感想ですね。
まとめ
入社前の内定者インターンでは、入社後どのように働くのかという点を身をもって感じることができました。 またインターンを通して、スキル面での成長はもちろんのこと、リモートワークでのコミュニケーションの取り方、少数チームでの開発など直接開発に関わらないことも多く学ぶことができました。 内定者インターンはよくある選考直結型のインターンとは違って入社は決まっていたので、成果以外にも興味を持って学び取ろうと思える余裕があるなと感じました。
Opt Technologies ではエンジニアを募集中です。カジュアル面談も可能ですので、下記リンク先よりお気軽にご応募ください。