はじめに
こんにちは!スタメンで内定者インターンをしている梅村です。 内定をいただいてから今まで、約半年間インターンを行ってきました。 今回はインターンの振り返りを記述しようと思います。
自己紹介
自分は現在、愛知県の大学に通う修士2年生です。大学では最適化を専攻していて、その中でもポートフォリオ最適化問題に取り組んでいます。
今年の4月に20卒エンジニアとして内定をいただき、5月からプロダクト部で内定者インターンをしています。
自分以外のスタメン新卒エンジニアは、インターンから内定の流れでジョインしている人が多いですが、自分は内定から内定者インターンの流れでスタメンにジョインしました。
大学の講義や研究でプログラミングは経験してきたものの、スタメンでインターンを始める前までRailsに触れたことがありませんでした。しかし、半年間のインターンで、Railsを用いたTUNAGの新機能開発・機能改善を行えるまで成長しました。
以下では、普段の1日のスケジュール、どのような業務を行ってきたかを記述していきます。
1日のスケジュール
- 9:15 - 出社
- 9:30〜9:45 - プロダクト部、所属チームで朝会
- 9:45〜12:30 - 開発
- 12:30〜13:30 - 昼休憩
- 13:30〜15:30 - 開発
- 15:30〜16:00 - プロジェクトミーティング
- 16:00〜18:00 - 開発
- 18:00〜18:30 - 日報作成
- 18:30 - 退社
以上が1日のスケジュールです。
朝会はプロダクト部全体で行った後に、チーム単位でも行います。機能のリリースがある場合は全体で共有します。チーム単位の朝会では、チーム一人ひとりのタスク共有・懸念事項の共有を行います。
朝会が終わった後は開発業務に取り掛かります。開発環境として会社からMacBook Proの15インチ、30インチの4Kディスプレイ、キーボード、マウスが支給されます。自分は肩こり軽減のためにデュアルキーボードで開発しています。
昼休憩の過ごし方は人それぞれです。自分は、昼はよくコンビニへ行きますが、飲食店へ行ったり、弁当を持ってきている人もいます。デスクで作業しながら食事をしたり、共有スペースで会話しながら食事、家が近い人は家で食事している人もいます。
昼休憩が終わった後は、引き続き開発を行います。日々プログラミングばかりしているわけではなく、コードレビューやドキュメントの作成も行います。スタメンのプロダクト部では技術力だけでなく、読む力やドキュメンテーション力も磨けます。
終業時間近くになると日報を書き始めます。日報では、タスクの進行状況、今後の予定などから、最近学んだこと、日頃感じていることを記述します。
このような感じで1日が終わります。終業後はチームメンバーと勉強会をしたり、スタメンのオフィスを貸し出してもくもく会を行うこともあります。
以下は、勉強会の写真です。
インターンではありながらも、社員と同じ業務、勉強できる環境が揃っています。
これまでの開発内容
自分はWebアプリケーションチームに属していて、主にTUNAGの新機能開発、機能改善を行っています。Webアプリケーションチームでは、バックエンドはRails、フロントエンドはReactを用いて開発しています。自分は今までの開発業務ではRailsしか触っていませんが、今後はReactも触る予定です。
インターンを始めて最初の業務は、プライバシーポリシーのリンク先のURLを変更する作業でした。簡単な変更でしたが、初めてのリリースだったので、とても緊張したのを覚えています。
しばらくしてある程度Railsが触れるようになると、TUNAGの少し複雑な機能の修正を任されるようになりました。TUNAGに関してのお知らせを表示する際に、利用している機能ごとに出し分け、デバイスごとに出し分けできるようにする、という修正です。 それまでの業務は、ピンポイントで修正すれば済むようなものを行っていました。ですが、この修正部分は色々な箇所の影響を受けていた・与えていたので、そもそもどこを修正すればいいのか理解するまでに時間がかかりました。理解してからも、メソッドの書き方、画面の表示方法など、新しいことの連続で苦戦しましたが、とても良い勉強になりました。
その後は、新機能を2つ開発しました。新機能開発では、設計からモデル作成、コントローラー作成、ビュー作成を一通り行い、学んできたことの集大成となるような業務でした。新機能開発を通して、マイルストーンの作成の難しさを実感しました。マイルストーン作成では、自分の持っているスキルと照らし合わせながら、何週間・何ヶ月先を考えます。自分は、マイルストーン作成時に細部まで考えきれておらず、途中で開発の流れの変更、最終的なリリース予定日をズラすことになりました。これからは意識的に前倒して開発していくことを心がけていきます。
インターンを通して学んだこと
半年間のインターンを通して、自分の意見を持つ重要さを学びました。スタメンは自社開発企業です。自分たちでサービスのロードマップを考え、開発していきます。より良いプロダクトを作っていくために、プロジェクトの責任者として意見を持ち、時には上司や他部署の人とも意見をぶつけ合わなければなりません。スタメンのプロダクト部では、ただ言われた通り開発するだけでなく、良いプロダクトを作るためにはどうすればいいか考えられるエンジニアを必要としています。 そこで自分はどうだったかというと、プロジェクトの責任者として意見を持てておらず、オープンな質問ばかりしていました。自分が意思決定をする場面でオープンな質問をしてしまい、何も決まらない。結局上司に聞いて遅れが発生する、ということが多々ありました。新機能開発ではこの問題が顕著に表れていて、成長した反面、課題も出てきたタスクとなりました。 ただ、インターンの段階で自分の課題に気づけたのはとても幸運です。正式に入社するまでに、自分の意見を持つことを意識しながら開発を進めていきます。
おわりに
スタメンでは若手に多くのチャンスが降ってきます。また、周りには優秀なエンジニアが多く、切磋琢磨できる環境です。自分は、インターンの段階から多くを任せていただき、成長してきました。これから正式に入社して、良いプロダクトを作るために全力を注げる、成長していけると考えると、ワクワクが止まりません。
最後に、株式会社スタメンでは一緒に働くエンジニアを募集しています。ご興味のある方はぜひエンジニアサイトをご覧ください。