あきおのブログ

自分語りをするためにこじ開けた隙です

院試について(創造情報学専攻)

はじめに

東京大学大学院情報理工学系研究科創造情報学専攻の修士入学試験に合格しました。2020年4月入学です。学部では航空宇宙工学をやっているので院から専攻を変えることになります。大学院の外部受験については情報が少なく、先代の方々の院試体験ブログがかなり役に立ったところがあるため、僕も同じことを企んでいる人の助けになることを願って軽く振り返っておきたいと思います。

もくじ

どうやって出願先を選ぶか

外部受験を視野に入れることで(受かるかは置いておいて)あらゆる専攻の研究室を希望することができます。多くの専攻では主に直属の学部・学科から学生を受け入れています。大抵の専攻では対応する学科の学部生より若干多い定員を設定しているので、外部からの進学が想定されていないことはありません。ただし、受験者の大半を占める内部生と渡り合う必要があります。院試に必要十分な知識に学部の講義で触れ、おそらくは過去問など潤沢な資料を共有している層が大半という意味です。

一方で、下に直属の学科を持たない大学院オンリーの専攻というのも存在しています。柏の新領域などがそれで、僕が受けた創造情報学専攻も情報理工学系研究科6専攻の中で唯一学部を持たない専攻です。この場合は内部生も外部生もほぼ同じ条件で試験に臨むということになります。

また、研究室の所属先についても確認しておくといいと思います。そこのボスが2つの専攻を兼担している教授というケースが少なくなく、この場合は両方の専攻から学生を募集することになります。片方の専攻には学部から来る人が多くて厳しいけど、もう片方では外部オンリーの枠になっているような場合は後者に出願するといい気がします。

そういうことを勝手に考えたうえで、出願先を

  • 情報理工学系研究科 創造情報学専攻 (-> 本エントリのネタ)
  • 新領域創成科学研究科 複雑理工学専攻 (-> 次エントリのネタ)

の2専攻に決めました。

出題形式とか

  • 英語(TOEFL iBTスコアレポート提出 or 情報理工学系研究科一斉実施のTOEFL ITP)
  • 数学 or プログラミング
  • 専門科目(電子情報、システム情報、数理情報、コンピュータ科学、創造情報の中から選択)
  • 口述試験

という感じになっています。2×2×5=20通りの受け方があります。多すぎ。

まず英語についてですが、基本的にはスピーキングとライティングがないITPが楽かと思います。いちおうiBTは何度も受けられる(受験料バカ高いけど)のと今後留学とか考えてる場合にスコアを利用できる可能性があるという利点があります。

数学にもオプションがあるのが本専攻のユニークなポイントです。情報理工の共通数学か、世にも珍しいプログラミングの院試を受けることになります。研究とかインターンとか競プロとかで日常的にコード書いてる人にはわりかし平易な出題が多い感じだったのでそういう人はプログラミングでいいかなという感じでした。(あくまで出願時点の感想です。後で述べるのですが、今年の問題がゲロ難しかったので来年以降はこの限りではないかもしれません) 数学は範囲が広いしぱっと見結構重たいです。でもプログラミングほど難易度が乱高下しなさそう。

専門科目は5択です。これに関してはどれを選ぶと死ぬみたいなことはとりあえずなさそうなので、出題形式とか自分の学部時代の講義内容を考慮して好きなのを選べばいいと思います。大雑把な傾向としては

という感じです。

最終的に

  • TOEFL ITP
    • 英語に勉強時間割くのが勿体なかった
    • 併願していた複雑理工ではITPしか選択肢がなかったのでまとめて対策したかった
  • プログラミング
  • システム情報
    • 試験が短い
    • 制御・力学など学部でやったことがまあまあ出る

で選択しました。

スケジュール

2月中旬  サークルを引退した。その翌週ぐらいに「勉強するか〜」と思って最初に参考書を買った気がする。ただこの時点では何もわからないのであまり深く考えず読み物感覚でゆっくり読み始めた。CSと創造でどっち受けるか迷っていた。

4月下旬  志望を創造情報に固める。併願先も探して決めた。プログラミングで受けることにしたのでこの時点で数学の勉強を放棄。

5月下旬  院試説明会を聞いて専門科目の形式がわかったので、システム情報で受けることにした。

6月  ちんたら参考書読んでインプットしていたのが大体済んだので参考書の章末問題とかやり始める。

7月  過去問に着手した。

8月下旬  本番

対策

買った参考書を淡々とレビューします。

英語

メルカリで安かったのでやたらたくさんの参考書を買った気がしますが多分そんなにはいらないです。

TOEFL ITPテスト完全制覇

TOEFL ITPテスト完全制覇

1冊で全セクション対策できる上に模試が付いてるお得な本。なんかやたら難しい。リスニングとか特に。

TOEFL ITP TESTリスニング完全攻略

TOEFL ITP TESTリスニング完全攻略

  • 作者: 宮野智靖,ジョセフ・T・ルリアス,木村ゆみ
  • 出版社/メーカー: 語研
  • 発売日: 2011/11/01
  • メディア: 単行本(ソフトカバー)
  • 購入: 12人 クリック: 13回
  • この商品を含むブログを見る

リスニング重点的に対策したい人はどうぞ。シンプルにボリュームが多くて満足。クソマニアックなイディオムとか出てたまに腹が立つ。

全問正解するTOEFL ITP TEST文法問題対策 ([テキスト])

全問正解するTOEFL ITP TEST文法問題対策 ([テキスト])

文法やりたい人向け。別にそんなに難しくないので演習量こなさなきゃ不安な人だけやればいいぐらいな内容です。

TOEFL ITP(R)テスト 公式テスト問題&学習ガイド

TOEFL ITP(R)テスト 公式テスト問題&学習ガイド

  • 作者: 田地野彰,金丸敏幸,Educational Testing Service(ETS),国際教育交換協議会(CIEE)日本代表部
  • 出版社/メーカー: 研究社
  • 発売日: 2012/03/07
  • メディア: 単行本(ソフトカバー)
  • 購入: 2人 クリック: 6回
  • この商品を含むブログを見る

公式問題集。新品で3000する割になんと1セットしか収録されていないぼったくり仕様。いちおう難易度はもちろん体裁とかもほぼ本番まんまなので本物志向の人はどうぞ。

【CD3枚付】TOEFLテスト英単語3800 4訂版 (TOEFL(R)大戦略)

【CD3枚付】TOEFLテスト英単語3800 4訂版 (TOEFL(R)大戦略)

単語帳。最後の方ヤケクソみたいに難しい単語が載っていてマニア向け。

時間をかけたくない人はとりあえず一番上のだけやってけば最低限のエッセンスは得られると思います。あとは自分が弱いジャンルを個別につまみ食いするような感じで。

一応目安として550点取ってればビハインドになることはなくて600あると優秀な部類だとか言われています。記事執筆時点では模試等受けたことがない僕には何も言えませんが。

プログラミング

まずはレギュレーションから説明すると、

  • 言語は自由

  • 1冊だけ紙媒体の書籍をリファレンスとして持ち込んでいい

  • 自分のマシンに保存したリファレンスやコード断片は自由に使っていい

という具合です。過去問を見ればわかると思いますが、毎年傾向も難易度もかなりバラバラでこれが決定的に効くという対策は正直わかりません。ただ競技プログラミングみたいなアルゴリズムを設計することに重点をおいた出題というものは殆どない気がします。これで終わると身も蓋もなくなってしまうので、いちおうやっておかなければ死ぬ可能性があることを挙げておくと、

  • 入出力のやり方を抑えておく。標準入出力、txt、csv、バイナリファイルなど。

  • 手元のリファレンスを充実させておく。知らない操作を要求された瞬間死が見えるので何でもかんでも自分のマシンに放り込んでおくといいです。

ぐらいですね。競プロライクな問題が出にくいとはいえ、問題数をこなすことはいろんな操作を体験することに繋がるので、そういう意味では競プロの過去問埋めるみたいなことはまあまあ有効だと思います。

専門科目

上で述べたとおりシステム情報学を選択しました。出題形式は例年

  1. 信号処理

  2. 電子回路

  3. 制御

  4. コンピュータアーキテクチャ or 論理回路

  5. 力学

となっていて、今年は2問選択でした。ここ数年のうちは同じだと思います。選ぶべき問題数が少ないので、1~2問は最初から対策しない捨て問にするという選択も有効だと思います。僕は電子回路だけ切って残り4つから解けそうなもの2つを選ぶことを想定していました。

・信号処理

信号解析入門 (電子・情報基礎シリーズ)

信号解析入門 (電子・情報基礎シリーズ)

これで大体の範囲はカバーできるのですが、そもそも毎年出題意図が掴みづらい難問が出るので選択しないほうが賢明な気がします。

・制御

演習で学ぶ基礎制御工学

演習で学ぶ基礎制御工学

演習で学ぶ現代制御理論

演習で学ぶ現代制御理論

古典制御と現代制御が大体交互に出てきます。出題も比較的易しいので取ったほうがいいです。

・コンピュータアーキテクチャ

コンピュータの構成と設計 第5版 上

コンピュータの構成と設計 第5版 上

コンピュータの構成と設計 第5版 下

コンピュータの構成と設計 第5版 下

パタヘネ。この分野では一番有名な教科書です。名著なだけあって難しいので、2周ぐらいするとだんだんわかってきます。教科書の分量としては絶望的に膨大なのですが、出題のパターンはいくつかしかないので過去問をこなせば十分得点源になると思います。

論理回路

論理回路入門

論理回路入門

この本がバイブルです。めちゃくちゃわかりやすいです。問題も割と楽なのですがあまり出ないので出たらラッキー程度に。

・力学

演習力学 ((セミナーライブラリ物理学 (2)))

演習力学 ((セミナーライブラリ物理学 (2)))

大体の理系は一生のうちどこかで触れてそうなので勉強量としては少なくてすみます。たまに超簡単な出題があるのと、他が死ぬほど難しいときのセーフティネットになる可能性があるので取ったほうがいいです。

本番

英語

他の科目より早い8月上旬の実施でした。会場が法文一号館の大教室で音響が激ヤバやろなぁ・・・などと思っていたのですがそうでもなかったです。目立つ事故は起こりませんでした。

プログラミング

昨年までの問題を解いた感触は良好で、得点源ぐらいに考えて完全にナメていたのですが、悪夢のような難易度でした。暗号化と復号の実装を主にさせられました。実装すべきアルゴリズムがそもそも馴染みのないもので方針が立たなかったり、執拗にバイナリファイルを読み書きさせられるなど、詰みポイントが尋常じゃなく多かったです。

専門科目

例年の稼ぎポイントだったアーキテクチャで過去十数年出ていなかったプロセス間通信についての出題があり、ノータッチなので当然解けない。信号処理も相変わらず難しそうなので消去法的に力学と制御を選んだのですが、これらも決して平易な出題ではなく、全体的に苦しかったです。

口述試験

第一希望研究室の先生から、やりたい研究と得意科目(なんでや)を聞かれました。3分ないぐらいのあっさり感でした。余談なのですが創造情報の口述試験は筆記の翌日ないし翌々日と異様に早いので、まあその時点じゃ筆記の結果は出てなさそうだしその出来で質問が増えたり減ったりはしないだろうな、という意識があって比較的リラックスしていました。

総括

試験勉強自体は特段うえーしんどい死のうみたいな感じではなかったのですが、自分の立ち位置とあとどれくらい頑張ればいいのかということが全く見えないのはしんどいですね。あとはわからないことに出くわしたときに気軽に教えを仰げる人間が近くにいないので、間違った理解のまま突っ走っているのでは?という不安もところどころありました。そこは周りと違う院試を受ける上で覚悟しておいたほうがいいかもしれません。まあでも情報をしっかり集めて万全の備えで臨めばきっとうまく戦えると思うので、本エントリを読んで気になった人はぜひやってみてください。

メルカリでインターンした話

f:id:akio_bu2b:20190724132234j:plain

エントランスのやつ


はじめに

タイトルの通りです。約4ヶ月ほどインターンをしました。いちおうやりきったというよりは来月の院試に向けて休んでいるだけなのですが、なかなか素晴らしい経験だったので文章にしておこうというモチベです。

経緯

今まで2つの会社で開発の仕事をしてきました。そうこうしているうちにもっと大きい会社でのサービス開発に関わっていけたら楽しいのでは?と思ったのと、ちょうどサークルを引退して使える時間が増えたのがあってトライしてみたという感じです。

メルカリという会社について

いまやお馴染みになったフリマアプリの会社です。2013年に創業してから6年でダウンロード数1億を突破、昨年には東証マザーズへの上場を果たし時価総額は4000億円を超える、などと滅茶苦茶な勢いで成長を続けています。

特に、採用に力を入れていることは有名で、優秀なエンジニアをどんどん取り込んでいるなんて言われていることが多いです。(中途のことはよく知りませんが。)新卒市場においてはそもそも新参なのでライバル企業は多いようですが、昨年秋にインドを中心とした諸外国からたくさんの外国人エンジニアを採用した話はちょっとした話題になっていた気がします。

そして、インターンも積極的に行っています。そもそもIT業界では人材獲得競争が熾烈を極めており、毎夏いろいろな会社が高額報酬を背景に学生にインターンに来てもらおうとする動きが盛んです。これが情報系学生の中で話題になって会社のいい宣伝になっているところがあるようです。メルカリは毎年のサマーインターンに加え、時期を限定しない通年インターンの採用を行っています。僕が今回参加したのはこの通年インターンで、週2~3日の出勤が求められるものでした。4Sセメスターは授業がほとんどなかったので、研究活動がキツくなるまでできそうかな?という気持ちでした。

 

仕事について

環境

本社は六本木ヒルズ森タワーに入居しています。オフィスの領域はゲートで区切られており、インターンでもしない限りは学生が足を踏み入れられるところではないので、初回訪問時はだいぶ興奮した記憶があります。メルカリは現在その中の5つのフロアに跨っています。

オフィスは大企業らしく広大で、共用スペースが充実しています。窓際の席からは東京の南側を一望する形になり、眺めがいいです。従業員の話をすると、外国人率がめちゃくちゃ高いです。エンジニアに限ればその割合は半分を超えるんだとか。そんな多彩なバックグラウンドを持つ人々が社内部活動やランチで自然に相互理解していけるように施策が工夫されていたのが印象的です。

自販機のドリンクはタダで、ネスプレッソマシンも自由に使えるという充実ぶりでした。ただ社内にカフェテリアがあるわけではないので食事は自分で調達する必要があります。

開発環境も極上です。全エンジニアにフルスペックのラップトップとモニター(希望に応じて)が与えられ、それらは任意のタイミングで交換可能です。JetBrains IDE などの有料ソフトも希望すればすぐにライセンスを取得できました。

内容

応募したポジションは Software Engineer(Frontend) でした。これはモバイルクライアントを除いた狭義のフロントエンド(Webフロントエンドとしばしば呼ばれる)の領域です。メルカリレベルの巨大な組織で未経験の領域で働ける自信がなかったので以前のバイト等で経験のあるフロントエンドを希望しました。配置換えについてはかなり寛容な空気があるので後からでも変更できるというのはよかったです。

配属されたチームは僕を入れて7人でした。(その後新卒の方とインターンが一人ずつ加わった) うち5人が外国人という環境だったため、ミーティングから日常会話まですべて英語でこなす必要がありました。朝から晩まで英語しか喋らない日が普通にあります。その上全員アメリカ出身でないので5種類の訛りを聞き取らなければいけないというのもヤバかったです。最初は滅茶苦茶苦労したのですが、幸いチームのエンジニアたちは皆優しく、意思を頑張って汲み取ってくれました。

技術要素としては React, Redux + TypeScript という流行りのやつがメインでした。IDEの補完が強烈なのでコーディングそのものは思ったほど苦労せずすんなり入っていけました。内容はざっくりとしか言えないのですが

  • 古いコードを最新の技術でリニューアル
  • セラー側のUX改善に関わる新規画面の実装
  • バイヤーの配送周りの新機能の実装
  • Web API の社内開発者向けデモページの実装

など手広くやれました。がっつりメリメリコードを書くというよりはバックエンドエンジニアやプロジェクトマネージャー、デザイナーなどと綿密に摺り合わせをしながら慎重に進めていく感じでした。

まとめ

よかったこと

  • 環境が最高。
  • 待遇が良い。
  • 時々タダで六本木高級メシを食べられる。コミュニケーション施策としてメンターランチ(新人とメンターと数人を募ってランチに行く)やチャットランチ(日本人の英語力や外国人の日本語力を伸ばすためにランチで会話する)、シャッフルランチ(チームを横断して数人でランチ)などが用意されており、これらは会社のお金で飲食できます。また、新メンバーの歓迎会やチームビルディングなど真っ当な理由の飲み会なら夜でも会社のお金が出ます。
  • 人事評価が明確だった。アルバイトやインターンだと、給与体系が正社員と別だったり、昇給の要件が異様にシビアだったり、自分で交渉して上げてもらわなきゃいけなかったりして大変だと思うのですが、メルカリではしっかり正社員と同じ基準で評価がなされていました。3ヶ月に1回上長や指名したメンバーからフィードバックを貰え、しっかりやってれば昇給もします。
  • 実際のプロダクトに存分に触れることができた。

よくなかったこと

  • 物価がクソ高い。毎食会社のお金でランチ、というわけにはいかなかったので何もない日は普通に外で食べます。雨なんか降ってしまうとめんどくさいのでオフィスのある森タワーの中で済ますことになるが、学生が気軽に入れる店が皆無。ほぼナチュラルローソン1択になってしまう。
  • まあまあ時間がとられた。元々応募条件的にも週20h程度ということになっていたので最低でも週2回はフルタイムで働いた。まあ別に稼働が少ないから咎められるとかそういうことはないがあまり少なすぎても面白い思いはできなさそう。
  • 英語がキツかった。特に序盤はプロジェクトの構造すらまともに把握していない状態で英語でコミュニケーションを取りながらタスクを進めることになるので苦労した。まあ無理矢理にでもそういう環境に身を置くことで今では多少の改善を感じているので一概には言えないが。

おわりに

色々書いてとっ散らかってしまったのですが、めちゃくちゃよいです。他の方も書いてらっしゃることなのですが、「インターンだからといって特別扱いしない」というスタンスは一貫しているような気がします。正社員と同じマシンと福利厚生が与えられたうえで稼働することになるので気は抜けなかったです。しかしながら「メルカリの仕事」にとどまらず「エンジニアリングそのもの」を体験させたいという熱い思いを感じました。

前述のとおり通年インターンは随時募集があるみたいなので興味のある方はぜひ参加してみてください。(採用HPが最近リニューアルしてかっこいいです。)

careers.mercari.com

 

突然ですが。

ようやくブログを始めることにしました。たぶん3日で飽きると思います。

 

面白いことを言わなきゃなあと思ってるけどブログで面白いこと言うのって難しくないかこれ。何も思いつかん。Twitterとか日常会話とかだと瞬間的にウケればいいけどブログってウケるときのテンションで最後まで走り抜けないとダメじゃないですか。厳しい。

 

寝て起きたらなんか思いつくかもしれない。