読者です 読者をやめる 読者になる 読者になる

たにしきんぐダム

プログラミングやったりアニメやゲーム見たり京都に住んだりしてます

pixivインターンに参加して中学生から使ってるpixivのコード見た

12/12(土), 12/13(日) の二日間で pixiv株式会社の短期インターンに参加してきました.

ssl.pixiv.net

pixivはほぼROM専ながらも中学生の頃からよく使っているサイトで(ちなみに今は大学3回生) その中身を触らせてもらっただけでなく、まだ新鮮なバグにも取り組まさせてもらえて最高だった!

f:id:tanishiking24:20151215165007j:plain:w300

はしゃいでいる様子

エントリー

2日間だけだし、面接もなく事前課題に対して出したプルリクの内容で決めるということらしかったのでかなり気軽にエントリーしたのを覚えてる.

事前課題

事前課題として与えられたのは脆弱性が含まれているという小さなウェブアプリケーション. その中から脆弱性を発見してそれを改善するプルリクを出すことで事前課題提出ということになった.(先進的っぽい!)

直せたのは一つだけだったけれど、ほかにもたくさん脆弱性はあったっぽいし もっと頑張りたかった...!

インターン開始

インターンが始まってみると まさかのpixiv本体のインターン1日前のスナップショットと その時点で本体に残ってたissue(社員もまだ手をつけてない?)から適当にメンター陣が選んだissue(15個くらい)をインターン生たちでつぶすという感じでした. 現場感あってすごい.

インターン生の開発環境として開発サーバーが与えられます. 開発環境のセットアップはほとんど自動化されてたりREADMEに詳しく書かれていたりしたのでサクサクっとストレスなく開発環境を整えることができて体験が良かった.

開発中

Github上でも現実でもメンターさんが手厚くフォローしてくれます.

f:id:tanishiking24:20151215163745j:plain 様子です

バグを直すのにpixivの重厚なコードに目を通す必要があったのですが、10年前からあるサービスなのにきちんと設計されていたので全然読みやすかった.

オフィス

すごい楽しげだった.

色使い凄いし集中できるのかなぁと思ってたけど 開発中は画面しか見てないから気にならないし、ふと周りを見回したら自分の好きな物(フィギュアとかイラストとか)が視界に入って幸せでした. 椅子も座り心地最高だった

f:id:tanishiking24:20151215171414j:plain:w400

絵馬凄い

総評

最終的には2日間で6つくらいのissueに対してプルリクを投げてOKをもらった(割と簡単めなissueにばかり手を出していたけど)

早めに作られたプルリクで良さそうなコードが本体に取り込まれるという感じで、結局僕の提出したプルリクでとりこまれることになったのは 1つで社内フレームワークに対するバグフィックスでした. 社会貢献できてよかった.

感想

楽しかったし勉強になった!

やはり自分はセキュリティまわりの知識が乏しいなぁという印象も受けたのでこれから勉強すべきことも分かった.(とりあえず徳丸本読みます)

pixivのエンジニアさんのレベルは非常に高く、会社の雰囲気も凄く楽しげで、こういう会社で働くのはとても楽しいだろうなぁ

懇切丁寧に指導してくれたメンターさんも二日間ながらも一緒にした皆もありがとうございました!