見出し画像

来年海外のコンピューターサイエンス修士に出願しよう。

闘争前夜

「来年海外のコンピューターサイエンス修士に出願しよう。」そう思ってTOEFLの自宅受験を申し込んだ。

TwitterのタイムラインでJAISTに通う人々を見たり、僕自身にコンピューターサイエンス(CS)のバックグランドがないことから、人生のどこかのタイミングで基礎をしっかり勉強したいなぁという漠然とした思いがあった。

そんなときにこの記事に出会った。
オンラインでコンピュータサイエンス修士号 – ジョージア工科大学編 –

オンラインで修士がとれる?条件はあるが、CSの学士出身でなくてもいい?「CSを学ぶ」といってもいろいろ独学も含めいろいろあるが、海外の院の修士はイメージしていなかった。

2月に入り、複業も雰囲気をつかめてきた。2021年は、「旗を立てる」年。到達したい地点はまだまだ遠いものの、経験を積み重ねて貢献できるイメージはつくようになった。週10時間程度稼働しても、まだ余裕がある。

その上でさらに挑戦したいことの筆頭は、CSを学ぶことだ。ジョージア工科大学に限らず、いろいろな大学の門戸が開放されつつあるようなので、来年の出願を念頭に準備を開始することにした。
Computer Science等の学位が取れる海外オンライン大学・大学院のまとめ

もう少し調査はするものの、いったんペンシルバニア大学のComputer and Information Technology (MCIT)を目指すことにする。厳密にいうと「コンピューターサイエンスの修士(Masters of Science in Computer Science)」ではない。しかし、それっぽい内容を学べそうなので、あまり気にしていない。ここを目指す最大の理由とは、出願資格がある中で一番入学するハードルが高そうだからだ。

わざわざ大学院に行ってCSを勉強しなくても、食っていける。真面目に仕事をし、複業で経験値を稼ぎ、四半期ごとの目標を立てて勉強し、たまに締切に追われながら本を書く。成長には困らなさそうだ。だからこそ、狭き門をくぐってみたい。闘争は自分の人生の本分だ。闘争、それは一見今の自分の手に届かなさそうなことに挑み続けることだ。壁は高ければ高いほど甲斐がある。論理的な説明はこれから捻り出す予定だが、中核は闘争だ。

準備開始

出願に必用なものはおおよそつぎの書類だ。
・志望理由書
・履歴書
・推薦書(2〜3通)
・TOEFLのスコア
・GREのスコア
・大学の成績証明書

志望理由書は、つぎの内容が説明されていないといけない。サウナで考える限り、説明に必用な事実や考えは持っていそうだ。読む側の気持ちを推し量りつつ、履歴書と合わせて準備を進めたい。

・What makes you interested in the MCIT program?
・How will you benefit from the program?
・Why will you succeed in the program?
・How will you contribute to the MCIT community?
・How do you plan to incorporate an average of 15 hours per week per course of studies into your lifestyle?
・Please describe your career goals and how the MCIT Online curriculum will help to achieve them.
・Given that the program is designed for people without a CS background, if you feel that your resume could be perceived as overqualified, please explain why MCIT Online is right for you.

推薦書は未知の領域だ。上司には話をしてみたが、大学の先生には長らく連絡をとっていない。推薦書は自分で書くものだと書いてある本も、そんなことしたら意味ないだろうと書いてある本がある。

英語

TOEFLは受けたことがないので、ひとまず受けてみることにした。

あと20点くらいは必用らしい。今回の出願に限らず、現在の業務を行う上でも、今後論文を読んだり、オンラインでさまざまな大学の講義を受けたりする上でも、英語はこのタイミングで思い切って強化したい。そこで、半年ほど田町にある英語の予備校に通うことにした。数校検討した中で、「TOEFL対策」に限らず地が鍛えられそうという観点で選んだ。何につけても努力はいくらでもするので、「正しい努力」の方向性に投資したい。いい感じに成果が出たら紹介するつもりだ。4ヶ月くらいで100点に到達させて、GREに取り組む予定だ。3セクションのうち、特にQuantitative Reasoningが重視されそうな雰囲気を感じる。

授業

肝心の授業はどうだろうか。FAQでも繰り返しすすめられているので、もっとも基礎の講座であるComputational Thinking for Problem Solvingから受講を開始してみた。

日常生活の問題に分解、パターン化、抽象化、アルゴリズムを適用するところから始まり、Pythonの基礎まで学ぶ。Week 4まであるうち、Week 3まで受講と課題提出を終えたところだ。エンジニアとして働いている以上、プログラミングや疑似コード、フローチャートなどの課題は難しくない。しかし、「プログラミング」という手段にたどりつくまでの論理的思考、アルゴリズムの比較、コンピューターのしくみの解説などはシンプルで洗練されていて好印象だ。引き続きIntroduction to Programming with Python and Java Specializationも受講してみようと思う。

MCITで開講されているのは、次のようなクラスだ。
必修(6コース全部)
・CIT 591 Introduction to Software Development
・CIT 592 Mathematical Foundations of Computer Science
・CIT 593 Introduction to Computer Systems
・CIT 594 Data Structures & Software Design
・CIT 595 Computer Systems Programming
・CIT 596 Algorithms & Computation
選択(4コース選ぶ)
・CIS 515 Fundamentals of Linear Algebra & Optimization (Math for Machine Learning)
・CIS 547 Software Analysis
・CIS 549 Wireless Communications for Mobile Networks and Internet of Things
・CIS 550 Database & Information Systems
・CIS 581 Computer Vision & Computational Photography
・CIT 520 Intro to Robotics
・CIT 582 Blockchains & Cryptography
・ESE 542 Statistics for Data Science: An Applied Machine Learning Course

選択肢

日本では、院というと「研究するところ」のイメージが強い。しかし、アメリカはそうでもないと聞く。情報系の院卒の会社の同僚の話を聞いてみると、研究室の指導もすてがたいと感じる。また、MCIT以外の授業も調べているわけではないし、非CS出身者に事前に試験を課す学校もある。3月はThere Are Master's in Computer Science Programs for Non-CS Majors, but Getting in Is Toughなどの記事も参考にしつつ、出願校、授業、出願要件の整理をしようと思う。

この記事が気に入ったらサポートをしてみませんか?