F@N Ad-Tech Blog

株式会社ファンコミュニケーションズ nend・nex8・viidleのエンジニア・技術ブログ

楽しいインターン

初めましての方は初めまして、そうじゃない方はおはこんばんちは、酒匂(さこう)です。

2月18日〜2月22日の5日間、SSP構築インターンに参加しました。 特に凝ったことも書けないので、つらつらとインターンの記録を綴ろうかと思います。

5日間の流れ

1日目 事務手続き → ウェルカムランチ → 環境構築 → SSP開発 → 卓球

インターン初日ということで、ガチガチに緊張しながらオフィスに入りました。

午前中は事務手続きとインターンで使用するPCのセットアップ、その後ウェルカムランチということで、社員の方々と昼食を食べながら歓談しました。 うにいくら丼、美味しかったです。

午後はローカルの開発環境を整えて、早速SSP開発を始めました。 言語に関しては、PythonかGoならサポートしてもらえるとのことだったので、触ったことのあるPythonを、フレームワークはFlaskというPython用のシンプルなWebアプリケーションフレームワークを選択しました。 初日の作業はSDKからのリクエストを受信するところまで作って終了。

卓球サークルがタイミングよく活動日とのことで、せっかくの機会なので退勤後に参加させてもらいました。 普段あまり体を動かすことがないので、久しぶりに運動できて最高に楽しかったです。 また機会があれば、マイラケットを持ってきて参加したいと思います。

2日目 DSPのモック作成 → 並列処理 → タイムアウト処理 → sudoers破損

2日目ということで、出社にも慣れた酒匂さんはバッチリ優雅にオフィスに入りました。
嘘です。バリバリ緊張しました。

午前中はDSPのモックサーバーを作りました。 これに関してはSSPの処理を7割くらい流用したのでサクッと終わりました。

午後は並列処理やらタイムアウト処理やらUbuntuの環境構築やら色々やりました。 sudoersに誤った設定を記述してsudoが使えなくなったのは良い思い出です。

3日目 Dockerチャレンジ → サーバー構築チャレンジ

若干筋肉痛の残る足を引きずりながらオフィスに入りました。

午前中は「サーバーサイドは触ったことないし、せっかくだからDockerを使ってみよう」と思い、Dockerで色々やってました。 が、なかなかうまいこと構築できず、SSP自体の構築の方に時間を割いた方が良いだろうと判断し断念。 最終的に断念せざるを得ない状況になったのは心残りです……。 そのうち自分のPCで色々遊んでみようと思います。

午後からはメンターの方が用意してくれたDSPのモックサーバーを叩くために、SSPのサーバ構築に挑みました。 NginxやらGunicornやらの設定がうまくできなくてかなり苦労しましたが、良い経験になったように思います(川崎さん、その節はどうもありがとうございました)。

4日目 パフォーマンス改善 → Elixirに移植

4日目は流石に慣れてきて程々に緊張しながらオフィスに入りました。

HTTP負荷テストツールのVegetaを使いながら、今回作ったSSPのパフォーマンス改善をしました。 ほとんどリクエストが捌けない状態からスタートしましたが、メンターの方に色々助けてもらいながらカーネルパラメータ(net.core.somaxconnとかTIME_WAITとか)をいじったりして、まぁ少しくらいはリクエストを捌けるようになりました。

ここまででSSP構築が一段落ついたので、Elixirに移植してみることにしました。 数日間かけて作ったSSPも一度作り終えて慣れてる状態だと数時間で完成したので、成長を実感しました。 Pythonより楽に作ったのにPythonのときと数倍以上性能に差があって苦笑しました。 言語ごとの得意不得意でここまで顕著に差が出るんだなぁと思いました。

退勤後はメンターの方々と一緒に↓のイベントに参加しました。

logly.connpass.com

色々と面白い話も聞けてよかったです。 また東京に来る機会があれば参加しようと思います。

5日目 事務手続き → フィードバック面談 → ランチ → ブログ執筆

最終日、連日の疲れが溜まっていたのか、若干寝坊しました。 一応寝坊しても間に合う時間に目覚ましはかけてましたが、ホテルにスマホを忘れて取りに帰ったりした関係で渋谷駅に着いたのが9:57。 全速力でオフィスまで駆けつけた酒匂さんは無事間に合いませんでした。 反省。

午前中は事務手続きとフィードバック面談、その後ランチに連れて行ってもらいました。 最終日ともなると流石にメンターの方々とも打ち解けて色々と楽しくお話できました。 フィードバックもとても丁寧で嬉しかったです。

午後はElixirに移植したSSPのパフォーマンス改善しながら本ブログ記事を執筆してました。 普段アウトプットする習慣がないので、なかなか新鮮で意外と楽しかったです。

成果物

拙いですが一応リポジトリ貼っておきます。

github.com

github.com

まとめ

アドテク業界は全然知らなかったので、こっち方面のインターンは新鮮でした。 初めてサーバーサイドに触れたので、色々と苦労することも多かったですが、社員の方々がフレンドリーでオフィスの居心地が良く、一週間楽しく開発できました。

5日間という短い期間でしたが、全体としてとても満足のいくインターンでした。 ありがとうございました。