採用

インターンシップ「CA Tech Challenge アドテクコンペ」で得た、
学生生活では体験できない3つのこと

「CA Tech Challenge アドテクコンペ」とは、サーバーサイドエンジニアとデータサイエンティストがチームとなって、ビッグデータを活用した広告プロダクト開発に取り組む3日間のコンペティション型インターンシップです。毎秒数千回開かれる広告枠のオークション環境下で、「アドテクスタジオ」※のエンジニアによるフォローのもと、広告をクライアントのために買い付けるシステム(DSP)をチームで開発し、現実に即した制約と達成条件の中で実際にオークションを行い、結果を競います。毎夏恒例の開催となっているこの「CA Tech Challenge アドテクコンペ」、昨年参加した内定者の下山翔に、その体験を話してもらいました。

※「アドテクスタジオ」 アドテクノロジーに関するサービスの開発を行うエンジニアの横断組織。

Profile

  • 下山翔
    1995年生まれ、東京都出身。
    明治大学大学院 博士前期課程在学中,2020年サイバーエージェントに入社予定の内定者。
    研究室では自然言語処理に関する研究を行っており,機械学習・統計を利用して社会実装を行いたいと思い入社を決意。

必要なのはモデルの予測性能の高さだけではなく、システムの全体バランス

「CA Tech Challenge アドテクコンペ」は30名ほどの学生が参加し、4-5名のチームにわかれます。その中でサーバーサイドとデータ分析の2つの役割に分かれて、DSP開発に取り組みました。
サーバーサイドは、サーバーの技術選定からインフラ設計、データ分析担当との連携を通してシステム開発を。データ分析は、与えられたデータを分析し、機械学習の知識を生かしてクリック率予測やオークション入札のモデルをつくります。
私はデータ分析の役割として参加しました。データが与えられ、広告配信システムを開発し、どれだけリクエストをさばききれるか、どれだけ予算を使用できるか、1クリック当たりのコストの低さ、などの評価項目を達成することが求められます。加えて、最後にスライドを使ってどんなDSPを開発したかプレゼンするのですが、その発表も評価の対象です。ただシステムを作るだけでプレゼンをおろそかにしても評価はされず、総合的に判断されていました。

広告配信システムは普段、学生生活などで接することがないので、どんなものなのか知りたくて参加しました。学校の研究で使っている機械学習のモデルは、なんとなく広告配信にも役立ちそうだとは思っていましたが、実際にはどのように役立つのかが知りたかったのです。「CA Tech Challenge アドテクコンペ」に参加し、感じたことは普段はモデルの性能だけを高めようとしているけど、それだけでは足りないということ。モデルはシステムの中の一部であり、いかにシステムにのせるのかを考えなくてはいけませんでした。加えて、予測スピードも大事で、秒間数千ものリクエストがあるなかで、予測性能が高くとも予測するのに1秒と長い時間がかかってしまってはさばききれません。予測性能とスピードのバランスが重要で、モデルが小さくても高い予測性能が出せるように工夫してスピードも意識しました。それまではスピードを意識したことはなかったので、新しい発見でした。

また、実際にシステムとして動かすためには、全体のバランスがとれていないといけません。いくらシステムをきちんと動かしていてもモデルがダメだとシステムも壊れて機能しないし、逆にモデルがきちんとしていてもシステムが脆いと動かなくなる。双方をきちんと作らないといいものができないと実感しました。

チームで開発して知った、コミュニケーションの大切さ

他社のインターンにもいくつか参加しましたが、機械学習を使うチーム開発は「CA Tech Challenge アドテクコンペ」ならでは。チームメンバーで相談をしながら進めることは、学びが多かったです。4名のチームメンバーは、サーバーサイド、データ分析とそれぞれ役割があるものの、自分の役割のみだけではなく、全員で相談しながら開発するということは、入社した後の働き方もイメージでき、チームワークを生かしたよりよいシステム開発ができたと思います。

3日間という短期間の中でチームワークを高めるために、僕たちがまず行ったことは、それぞれの強みや弱みを伝え合ったこと。そうすることで役割分担が明確になり、お互いに助け合いながら開発ができました。また、開発中も積極的に進捗を共有することを心掛け、認識のズレが生じないようにしていました。例えば、モデルをPythonで作成しサーバーは他の言語で開発した場合、両者を繋げる方法も考える必要が生じると思います。コミュニケーションをとる大切さを知ることができました。
また、10名ほどいるメンター社員はチームの担当以外の人にも相談することができました。メンター社員は答えを教えてくれるというよりも、一緒に議論してくれました。最後まで自分たちで考えながら進められたことも良かったです。

ずっと語り合いたい仲間ができた

「CA Tech Challenge アドテクコンペ」に参加して一番よかったことは、仲間ができたことです。チームメンバーは、技術的なバックグラウンドが少しずつ違っていたので、自分の知らない技術を学ぶことができますし、何かあれば相談でき、尊敬し合えています。「CA Tech Challenge アドテクコンペ」が終わった後もサーバー周りの技術について聞いたり、機械学習関連の技術における最近の動向を話したり、お互いが興味を持っている技術についての情報交換をしています。学校の友達とはまた違う関係で、技術が好きという共通項があるため、いくらでも技術の話ができるというのがいいですよね。なかには、サイバーエージェントの内定者になったメンバーもいるので、これから一緒に働けることがすごく楽しみです。

これから参加する学生へ

「CA Tech Challenge アドテクコンペ」はそれぞれが違う強みを持つ参加者が多いので、互いに尊敬し、学ぼうという姿勢を持つと得られるものはさらに多いと思います。
学校ではなかなか触れられないサービスのシステムを開発できたり、実際に働いている社員と話せたり、優秀な学生と知り合えたり、とても貴重な経験になるでしょう。
これは、データ分析の場合ですが、参加前には使うライブラリについて熟知しておくといいです。参加中は配信や入札のロジックを決めたり、他にも必要な情報を調べて決めるなど、タスクは膨大です。参加してからライブラリの使い方を調べていては間に合わないので、自分が使おうと考えているものについては事前にしっかり理解しておきましょう。
また、個人的にはもっとサーバーサイドのタスクを手伝えたらよかったと思うので、その技術を少しでも身につけておくとなおよいかもしれません。
ぜひ、チャレンジしてみてください。

アドテクコンペはこちらからエントリーしてください。
その他のエンジニア学生向け夏インターンはこちらからエントリーしてください。

新卒採用のオフィシャルSNSアカウントをフォロー

  • Facebook
  • Twitter
Page Top