CyberAgentの社会人向けインターン参加まとめ

CyberAgent社は採用の一環として自社媒体や他社と連携しながら若手エンジニアの発掘や育成に力を入れておられます。

いろんな機会で社のエンジニアと交流できる機会を用意してくれて、たびたびお世話になったのでここに記録を残しておきます。

サンカク(バックエンドチューニング)、。1dayインターン(Kubernetes回 / Rust回)の参加ログです。

サンカクに参加して

さる2021年9月12日にサンカクを使ってサイバーエージェントのGo講座を受けて来ました。

サンカクとは

サンカクはリクルート社が行っている就職/転職サービスの一つで、社会人に向けたインターン事業です。

IT、ことWeb開発事業においては近年、学生向けのインターンや就職あっせんサービスのサポーターズ(CALTA)やAtheletics(Gively)といったサービスが隆盛を極めている一方で、社会人向けになると極端に機会が縮小します。

(IT系に特化した転職サービスもあり、この手の形式の需要が見えにくいのかもしれませんが….)

サンカクはIT系に特化しているわけではなく、総合職/営業職/農林水産/製造まで幅広く扱っているようです。

募集要件について

よくあるWeb系のインターンほど募集要件は厳しくありませんでした。書類審査もほぼ行われてないのかも。(実際CyberAgent側も試験的な取り組み、とおっしゃってました。)

今回の参加の流れとしては、

書類審査 -> 予習案件をこなしたかどうかチェック ->参加決定

という感じでした。

今回はGoを使ったワークショップであるので、最低限やりたい処理をコードに落とせるか、という確認で添付されていたPaizaのC問題を解きました。 (計算量とかそれ以前に入力値をSliceに入れて適宜制御や処理をできるか、みたいなレベル。AtcoderのABC A~Bくらい)

適切なAPIの組み方やE2Eテストに自信がなかったのですが、受けれるなら、と思って遊びに行きました。

内容

この章に限らず、内容については話せる範囲でアウトプットを行っていいかを事前に伺っています。

関連して、いいタイミングでイベントのハッシュタグを聴いておくとTwitterにログを流しながら聴講できて振り返りが便利でした。

大まかな内容は、アプリケーション側のチューニングを通してベンチマーカーのスコアを競うISUCONに近い形式でした。

(時間が経ったのである程度踏み込みますが)ISUCONのように設定ファイルを初手で弄りに行って自分でモニタリング環境を立てて、というわけではなく、より純粋にアプリケーション側のロジックをいじって点数の向上を狙う、という感じで、main.go以下に結構実装の誘導が書いてあったように思います。 直前にISUCON11の予選に出場していたので、よりコードに向き合う時間が楽しかったです。

参加者の属性としては自分のようにGoにちょっとタッチしたことがあるバックエンド系の技術者や、SIをされている方もちらほら、という感じで知り合いが少ない場所でもアウェー感がないのが良かったです。

リモート懇親会も盛り上がっていました。

学生の身分があるときに同じくCyberAgentが主催の「WebSpeedHackathon」にも参加していたのですが、このときよりはもうちょっとまともに戦えたような気がします。 (特にこの頃はReactを触れなかったので、duでデカイファイルを見つけて来て圧縮するくらいしか仕事ができなかったのと、デプロイ周りで苦労した)

これも内外に向けてイベントが行われており、過去イベントのリポジトリが公開されているので探してみてください。 (2022年の年始にもTwitterで告知されてた。)

後は第二新卒向けの選考直結のGoのバックエンドエンジニア育成プロジェクトなんかもやってるみたいです。

これから学ぶ人を育てるノウハウが蓄積してるのはいいですね〜。

CA 1day Youth Camp 1Dayインターン (Kubernetes回)

上のイベントが行われた後、Twitterで採用イベントの告知があり、「既卒可」と書いてあったのでちょうど興味のあったdocker-compose のその先を聴いてみたいなと思って参加しました。

自身の受講時点でのk8sの理解度は、CyberAgentの過去イベントよろしく、ラズパイ3台でk8sクラスタを構築してなんちゃってVPSを作ったり、「1日でわかるDocker & k8s」をざっと読んだレベルでした。 こういう興味もタイムリー性のもので、直前にOSCでk8sの話を伺っていたのがアンテナを広げたような気がします。

選抜はESの提出のみで、ある程度バックエンドやインフラよりの適性があれば問題なく通ったのではないでしょうか(抽選になるほど参加人数がかさばらない用に制御されてそうな感じに広告の打ち方のうまさを感じました。)

タイムテーブルとしては、概ねお昼過ぎからお昼過ぎから2hの講義が2本という感じでした。 内容はDockerの基本からInfrastracture as Code のエコシステムについて深堀りしいくものです。 おそらく自分以外の大半もDockerは問題なく活用できるレベルの人が、その先を知りたくて参加してる人だったじゃないかなと思います。

k8sの講義では基本的なマニュフェストの作り方から動的にコンテナを制御する方法など一通り学びました。

欲を言えばAWSあるいはGCPの環境での実践例を見たいところではあったのですが、これらもマニュフェストの移送で構築が簡略化できてしまうので、現代のコンテナ冥利に尽きるといえるかもしれません。

CA 1day Youth Camp 1Dayインターン (Rust回)

Rustについて右も左もわからないまま参加しました。 初心者OKとのことで上記のイベント内で案内があり、懇親会中に申し込みました。

(ちなみに他にはReactの学び直しの回なども用意されてて、すでに内定先が決まっている人も歓迎とのことでした。)

今回はメインテーマとして、既存のbashコマンドの置き換え、というのがあり、Rustの文法を学びながら利用パターンの一つになっている再実装の楽しさを学びました。

とはいえほぼエコシステムについて学べないまま、所有権がでてきたあたりからマジで記憶がないのでココらへんは要復習…

他の言語の経験のある自分には以下の書籍が良さそうでした。 コンセプトから理解するRust

就活行事として

懇親会きっかけで他の興味のある部署の方にもつないで頂いて事業内容をうかがったりしているうちに「スピード採用受けてみる?」というお誘いがきたので受けてみました。 学生のときに採用イベントに参加したときよりも解像度が上がっていたので、技術者との方と面接の中でお話するのが楽しかったです。 広告系のバックエンドを希望していて、あまりフォローしていなかったゲーム系バックエンドについてお伺いしましたが、オンラインゲームを支える技術およびクラウドゲームを作る技術について話す時間があって、「提示していた最近読んだ本リスト」から興味を深掘ってもらえて有意義でした。

知識体系の獲得のきっかけ・ネットワーキング・転職活動で総じて体感が良く、青田刈りの要因はあれど、大きい企業は業界全体で技術者を育てる流れを作れているんじゃないかな〜と感じたイベント群でした。

ほなまた。

(画像やリンクを入れるといいかも)