リクルートインターンに参加しました

みなさん、こんにちは。id:ogxwxです。

今回は、リクルートインターンに参加したことについてブログを書いてみました。

最初に

2/25〜3/25の期間中でリクルートインターンに参加させてもらいました。

インターン参加の経緯は、個人的にリクルートってどんな会社なんだろうと技術的興味から参加させてもらいました。

インターン参加決定までの流れ

インターン参加決定までの流れは コーディングテスト->1次面接->2次面接->結果発表という流れでした。 

その中でも特に思い出深かったのが2次面接で、色々ありすぎのありすぎでscalaについてずっと話していた記憶がありますw

また、合格通知の日がクリスマスで、最高のクリスマスプレゼントでもありました!

配属先

スタディサプリENGLISHサーバーサイドチームにお世話になりました。

eigosapuri.jp

スタディサプリENGLISHのサーバーサイドでは、scalaを使用して開発を行なっています。

以下の記事からもわかりますが、かなり関数型指向で開発が行われていました。 

tech.recruit-mp.co.jp

他にも、gRPCを使用していたり、マイクロサービス化してあったりととてもモダンな設計で開発が行われていました。

ちなみに、自分はある監視処理系のバッチ開発を行いました。

インターン期間中に行ったこと

社員の方と同じスケジュールをこなした

インターン期間中は、他の社員さんと同じスケジュールをこなしました。実際に、自分が取り組んでいることの状況報告や、サーバチームの定例会に参加することができました。大体ですが、こんな感じで働くのか〜 を知ることができました。

コードレビュー

実際にscala界隈で有名な人たちと一緒にコードレビューを行いました。自分の作成したコードに対してレビューをしてもらったり、実際に自分でレビューをしてみたりと、コードレビューの重要性に気づかされました。

自分の技術力が低かったので、レビューするのが面倒だったと思うのですが、とても親切に丁寧にレビューをしてくれてすごく感謝しています。 ありがとうございました! 

イベントに参加

インターン期間中に、色々なイベントに参加させてもらいました。その中で、スタディサプリENGLISHのリリースイベントに実際に参加をしたのですが、みんなで"開発お疲れ様!"と言い合う雰囲気にいい会社だなと感じました。

LT会

週1回、数名の発表者(インターン生とリクルートの社員)が、自分の興味ある技術についてLTするという会で、技術分野はデータサイエンスやアルゴリズム・データ構造、セキュリティになど幅広い技術分野があり、とても刺激的でした。 

あと、お寿司とかお菓子とか食べながらでもあったので、とてもなごやかなLT会でした!

最終成果発表

インターン最終日にインターン期間中に行ったことをテーマに最終成果発表を行いました。 緊張もありましたが、なんとかやり遂げることができました!

毎日ランチ

インターン期間中はタダでかなり豪華なランチ(ステーキ、焼肉定食)をすることができました。 また、様々な技術分野の人たちとランチに行くことができたので、自分の知らなかったことを知れるいい機会でもありました。

学んだこと

scala関数型指向プログラミング

スタディサプリENGLISHのサーバーサイドはscalaを関数型指向で書いており、最初はコードを読むこと自体難しかったですが、色んな人のサポートもあって なんとかロジックの組み立てまで一人でできるレベルになりました。

ソフトウェア設計の重要性

正しい設計はソフトウェアの拡張性をあげるみたいなのを何かの本で読みましたが、確かにそうで
実際にインターン期間中である機能を追加した時、簡単に機能追加できたことを自分の身で実感しました。またモジュールの依存性も一方向だったこともあり、単体テストの作成も容易でした。ソフトウェア設計は本当に重要だなっていうことを改めて実感しました。

コードレビューの重要性

インターンに参加する前は、コードレビューをあまりやったことがなかったし、それにここまで重要だとも思ってもいなかった・・・ でもこのインターンで、ロジック一つ一つの構成をしっかり考えるようになったし、技術力もかなりアップしたと思います。 サーバーチームと、もっとたくさんコードレビューしたかったな・・・ 

最後に

このインターンに参加できたことで、技術的にも社会的にもすごく成長できました! 

本当にスタディサプリENGLISHのサーバーサイドチームのみなさま方、他チームのみなさま方、人事のみなさま方のおかげだと思います。 

本当にありがとうございました!