Reports

RCO で 4週間インターンをしました

インターン参加学生の記事です。

きっかけ

RCO(リクルートコミュニケーションズ) は競技プログラミング界隈では有名な会社です。 AtCoder でプログラミングコンテストを主催しているためです。
コンテストは “日本橋ハーフマラソン” という題で、所謂マラソン形式と呼ばれるものです。
RCOはコンテスト開催だけでなく、大学主催の競技プログラミング合宿のスポンサーについているなど、競技プログラミングをしているととにかくその名前を聞くことが多いです。

リクルーティングはコンテストの主催やスポンサーの目的の 1 つなので、スポンサーセッションとして会社紹介があります。
そこでは RCO の働きやすさや仕事内容の魅力についてが語られました。これが僕にとって非常に魅力的だったので、自然と RCO で働きたいと思うようになっていました。実はインターンの選考に応募するのは 2 度目で 、今回縁があって参加させていただく事になりました。技術的にも今後の働き方を考える上でも学ぶことが多かったので、記事としてここに纏めます。

仕事内容

秒間 50,000 リクエストをさばく広告配信システムの改善&機能追加
というテーマのもとで、実際に現在稼働している広告配信システムの開発をしました。
テーマから分かるように、RCO は高速で高精度な広告配信基盤の開発をしていて、これにはピーク時になると 1 秒間で 50,000 件のリクエストを処理する性能が求められています。 高速な処理が必要な理由は、RTB (real time bidding) という広告配信の仕組みにあります。(ただし、簡単のため便宜上多くの説明を省いています。)

例えばあなたが特定のウェブサイトにアクセスしたとします。 多くのサイトには、サイトの運営を支えるために広告が表示されています。サイトを開こうとした時点では、実はまだどのような広告が表示されるかは決まっていません。
サイトを開いた事がトリガーになり、広告配信システムに「あなたはこのサイトに広告を表示することに対していくら支払いますか?」というようなリクエストが来ます。その入札処理をする基盤が、今回私が開発に携わった広告配信システムです。当然、入札をするのに 10 秒もかけていたら、ページを開いてから広告を表示するまでそれだけの時間がかかってしまいます。実は入札には制限時間が決められていて、 広告配信システムはリクエストに対してネットワークの通信にかかる時間などすべて含めて 0.1 秒以内に返答をしなければなりません。リクエストはユーザーがウェブサイトにアクセスする度に発生しますから、大量のリクエストを高速に処理する必要があるのです。

仕事環境

メンターさんのサポートがかなり手厚かったのが印象的でした。
僕 1 人に対して 3 人の社員さんがメンターとしてついてくださって、いつでも気軽に質問ができる環境作りをしてくださったので、インターン最終日辺りになってからもっと色々質問すればよかった…と後悔するみたいなこともなく、作業を円滑に進める事ができました。
社内にはレッドコーダーが 4 人もいて、僕のメンターをしてくださった社員さんがそのうちの 1 人だったので、仕事だけでなくその辺りについても色々話をしておけばよかったと後悔しています。
このインターンには、競技プログラミングに限らず、様々な分野での実力者が集まっています。非常に優秀な社員さん方に囲まれて緊張しましたが、私がアホな質問をしても快く対応をしてくれたのが本当に有難かったです。
インターンとして働きやすかったのも魅力でしたが、社員さんが働きやすそうにしていたのも印象的でした。
1 行にすると、
それぞれが自分が一番パフォーマンスが出るような働き方をしていて、会社はその支援をしている
という感じです。ざっくり箇条書きにしてみました。

  • フリーのお菓子と飲み物が充実している。
  • 社員さんは労働時間や出勤時間に細かい制約がないです。
  • インターンは時給制ですが、出勤時間は自由です。僕は 11 時〜 12 時頃出勤していました。
  • リモートワークをする人がかなり多いです。大半の方が週に 1 回以上リモートワークをしています。
  • 社員さんは皆さん優秀で、少数精鋭の雰囲気でした。
  • 学会参加は勤務として扱われますし、それが休日にあれば休日出勤になります。勉強会も同様です。

LT 会 (ライトニングトーク会)

期間中に LT 大会が毎週ありました。インターン生とリクルート各社の社員さんが 5 分ほどで自分がやっていることを話しました。
インターンの採用はリクルート全体で一括だったため、色々な技術を持った人が集まっていて、 RCO 社内だけでは聞けないような技術的な話や同期のインターン生の大学での研究の話など、かなり刺激的でした。
RCO でも 2 週に 1 度金曜の夜に TGIF と題して LT 会がありました。 15 分ほどじっくり技術系の話があった後、懇親会をします。懇親会では普段話せない席が遠いチームの社員さんのお話を聞いたりできました。

まとめ

以上、短くなりましたが RCO で 4 週間インターンをした話でした。
RCO の Tech blog にも記事を書いているので、そちらもよろしくおねがいします。
4 週間お世話になりました、ありがとうございました。

(エンジニアコースのインターン生・池田さんが書いてくださいました。)

Reports