DeNA 社の StuDev 2015 に参加しました
Tweetはじめに
この記事は、DeNA 社のインターンシップである、StuDev 2015に参加してきた顛末を、自分のための記録および、今後のキャリアについて考える学生のために、ゆる〜〜く書き綴るものです。
最終日の懇親会にて、インターンシップの内容について公表しても OK とのことでしたので、内容も含めてなるべく詳細に書いていきたいと思います。ちょっと長くなるかもしれませんが、興味があれば読んでいただければ幸いです😆
そして、この場をお借りして、チームメンバーおよびメンターの皆様、そして快適なハッカソンを支えてくださった、DeNA 社の関係者の皆様に深く御礼申し上げます。本当にありがとうございました。
なぜ、DeNA社なのか?
日本に数ある IT 企業の中から、インターンシップ先のひとつとして、わたしは DeNA 社を選びました。理由はこんな感じ。
- 数ある IT 企業の中でも 大企業である こと
- 有名な企業だしなんとなく スゴ そう
- 優勝したら シリコンバレーツアー(!) が待ってる
- (3 日間のハッカソンで 10万円(!) もらえる)
わたしは現在、学生であるかたわら、大阪にある受託開発や Redmine プラグインの販売を生業とする会社でアルバイトをしています。
仕事を始めてからそろそろ 2 年半ぐらいになろうかというところで、アルバイトという身分でありながらも、古参メンバーとして責任を帯びた仕事を任されていたりします。こぢんまりとした会社で、少数精鋭のメンバーで開発にあたっています。
こういう環境で働いていると、自然と知りたい欲求がわき出てくるのですよ。
「先進的な大企業で働くエンジニアって、どういう仕事をしているんだろう?」
「そういう企業ではどんな人がいて、どういうふうに開発しているんだろう?」
「コンシューマ向けにサービスを出してる会社ってどんな感じなんだろう?」
今の会社に不満があるとかそういうのではなくて、単純な興味です。将来どこかで就職することになるのだから、学生という特権を使っていろいろな環境を見ておいたほうがいい、そういう考えです。
最後の2つは、動機としては少し邪(ヨコシマ)かもしれませんが、キッチリ成果を出してキッチリ報酬を頂けるなら、それにこしたことはないですよね。
というわけで、迷えるウサギ🐰はStuDev 2015に応募したのでした。
逆求人イベント
ちなみに、DeNA 社のインターンシップを知ったきっかけは、サポーターズというサイトでの逆求人イベントでした。宣伝っぽくなっちゃいますが、将来 IT 系のエンジニアを志望するなら、登録しておいて損はないサイトだと思います。
選考
インターンシップの選考にはいろいろなパターンがあるようですが、DeNA 社の StuDev に限っては、面接で全て見るといった感じでした。選考だけで 4 回程渋谷ヒカリエに足を運びました。
蛇足ですが、さすがに 4 回もヒカリエに行くと、駅からヒカリエまで雨に濡れずに行く方法覚えちゃうよね!雨に濡れない道を知るまで、どうしても渋谷駅から外に出てしまって、悲しい思いをしていました😭
この手の面接の経験がなかったので、特に 1 回目はものすごく緊張して、アッアッてなっていたように思います。
が!
いざフタを開けてみると、面接というか、雑談に近かったように思います。
曲がりなりにも 2 年以上現場にいると、学生といえども酸いも甘いも噛み分けるという謎の(?)経験が積み重なっていきます。いわゆる現場のエンジニアあるあるな話で盛り上がったりして、「学生というより、現場エンジニアと話しているようだ」と評されたりしました。
そんなこんなで、めでたく面接を通過し、あとは当日を待つばかりとなったわけです。
お題と球場見学ツアー
StuDev 2015 のお題ですが、横浜 DeNA ベイスターズの球場、通称 ハマスタ に来場するお客さんを増やすサービスを作ろう!とのことでした。
初めにこのお題を聞いたとき、正直なところ、どうしよう!長らく球場に行ってないから、どんなもの作ればいいか検討つかないよ 😖という感じでした。
おそらくそれも DeNA 社内では織り込み済みだったようで、みんなでハマスタでベイスターズを応援しよう というイベントを企画していただきました。問題点を探すために参加した企画のはずが、気づいたらものすごくアツくなってベイスターズを応援しているわたしがいました。試合は負けてしまったけれども..
蛇足ですが、DB.スターマンくんとDB.キララちゃんかわいいよかわいい。
球場のぬいぐるみ着ておどる仕事したい。
— Moza USANE (@Mozamimy) September 1, 2015
ハッカソン、始動!
制限時間は 3 日間、説明や資料作成、最終発表会なども加味すると、実質 2 日間あったかどうかぐらいです。3 日間で企画をして、プロトタイピングまで持っていきます。そのため、3 日間フルパワーで 100% 全力コミットでした💪
チームメンバーは @naonathan さんと @koooootake さんでした。 ふたりとも、本当に頭が上がらないくらいイケてるエンジニアでした。@naonathan さんは Rails でバリバリ Web アプリ書けるし、@koooootake さんはすごくキレイな iOS アプリを書けるし、ちゃんとサービスとして形になったのも、本当に彼らのおかげです。
ホテルや作業中の飲み物、おやつ、食事もちゃんと用意されていて、バッチリ開発に集中できる環境でした。🍖叙々苑焼肉弁当おいしいよ叙々苑焼肉弁当🍖
立ち回り
私は主にサーバのセットアップと Rails のサーバサイドを担当しました。ちょっと残念だったのは、与えられたサーバが Amazon Linux だったことです。
RHEL 系にありがちな ミドルウェアのバージョンが古い、ひどければリポジトリにすら用意されていない 問題のおかげで、肝心のアプリの実装にタッチできる時間が減ってしまったのが悔やまれます。自分で AMI を選択できていれば、無難に Arch Linux か Ubuntu あたりで構築していたと思います。もっとプロビジョニング力を上げないと...
特に今回作ったサービスは、ミドルウェアとして ffmpeg や Sound eXchange といった、ナウでヤングなソフトウェアに依存するものだったので、自力でビルドしたりなかなかに骨が折れました。
そして徹夜
なにせ 3 日間という期間なので、当たり前のように徹夜でした..!
これが地味に身体にこたえました。齢 24 にもなると、身体の節々にガタがきて徹夜が体力的にきつくなるものです。2 日目は、メンターの方の差し入れとしていただいた、飲み慣れない Red Bull を片手に、朝の 5 時頃まで作業してました。
ただ、このような苦難を乗り越えたからこそ、形になったときの感動、チームの一体感がマシマシになったのだろうなーと 今思います。
できた
そんなこんなで、できました🎉
サービス名はズバリ DBCheers !ベイスターズを表すプレフィックスである DB と、応援という意味の英単語、Cheer を組み合わせた、至極素直なネーミングです。
アプリのコンセプトは 「横浜DeNAベイスターズ 大応援共有サービス」。球場で撮影したいくつかの応援動画を、球場備え付けの大ディスプレイに同時再生するというものです。
上映される動画の選出には、応援の声の大きさ に重みを付けてランダムに抽出、特に頑張って大きい声で応援している動画は大きなスペースを割いて表示されます。いくつもの動画が同時再生される様は圧巻で、ワチャワチャ感が出てとても楽しい感じに仕上がったと自負しています。
また、大ディスプレイで再生されている様子を似せたページを、インターネットで共有することで球場に来たことがない人も取り込もうという工夫も加えています。
肖像権や著作権などの、権利的な関係でスクリーンショットをアップできないのが残念です😣
得られた知見など
1. Amazon Linuxしんどい
見出しのとおりです。Amazon Linux が、というよりも、RHEL 系のディストリで Rails やら、その他先進的なミドルウェアを揃えるのはそこそこしんどいです。
2. ちゃんとスケールするようにつくる
さすがに使える時間が 3 日間ということで、機能の実装でいっぱいいっぱいでした。ただ、ちゃんとサービスとして動かすことも考えてて、ちゃんと itamae を使ってサーバを増やしてスケールできる余地を残した作りにしてました。
あまり表に見える部分ではないのでインパクトは薄いのですが..
3. iOSでカメラで撮った映像を加工するのはしんどい
企画当時、iOS でとった映像を、端末でクロップしたりリサイズしたりするのはてっきり簡単だと思っていました。仮にそれができなくとも、撮影段階で映像のサイズをいじることぐらいシュッとできるものだと思っていたのですが..
@koooootake さんいわく、なかなか難しい注文だったようでした。ただ、結果的にはできたので、ノウハウとして蓄積するに値する知見を得られたと思います。
最終選考
ドキドキの最終選考。結果的には優勝はかないませんでしたが、審査員の方々の講評で名前が挙がるくらいにはウケが良かったようです。メンターの方も「惜しかったよ」とおっしゃっていました。
さいごに
本当に短く感じた 3 日間ですが、とびっきりの濃い時間を過ごさせていただきました。DeNA 社という大企業で働くエンジニアの皆様とお話する絶好の機会になったし、全国のイケてるエンジニアと知り合うよいきっかけとなりました。
実はこの夏、もっと他のところにもインターンに行く予定だったのですが、いろいろあって行かないことになりました。少し込み入った話になるので、別の機会にブログに書こうと思っています🐰