このポストは「GMOペパボエンジニア Advent Calendar 2020」の3日目です。2日目は、けんちゃんくさんの「見積り物語「相対さんと絶対さん」 | けんちゃんくんさんのWeb日記」でした。
技術そのものの話については、今年は#NervesJP Advent Calendar 2020あたりに書いていっていますので、そちらをご覧ください。Elixir/Nervesめちゃ面白い!!1
それはそれとして、エンジニアとしての自分自身にとって今年一番大きなインパクトがあったできごとはなんといっても大学院に通い始めたということだったので、その話をします。
これまでの大学院での活動
「北陸先端科学技術大学院大学先端科学技術研究科博士前期課程に入学しました」というポストに書いた通り、2020年4月から北陸先端科学技術大学院大学(以下、JAIST)の東京サテライトで、社会人学生をやっています。東京サテライトの所属ではあるものの、品川にあるキャンパスには2回しかいってないので、授業もゼミもほとんどオンラインという状況です。新型コロナウィルス感染拡大の第3波がきている(?)現状ですので、おそらくは2021年3月まで、1学年まるまるオンラインになりそうな気がしています。
4月に入学してからこれまでは、講義を受講して単位を取得することが主な目的となる活動をしていました。必修込みで20数単位ぐらい(はっきりとは認識していない)を取る必要があります。また、情報科学の学位を取るには、当たり前ですが情報系の単位を多く取る必要があります(知識科学系というもう一方のコースの単位も、ある程度まで認定されます)。そのあたりの話は、JAIST東京サテライトの名人物である白山さんが「働きながら修士課程1年目を終えて – 怠惰を求めて勤勉に行き着く」というポストにいろいろと詳しく書いていらっしゃるので、そちらをご覧になるとよいかと思います。
その他に、指導教員によってやり方が違うとは思いますが、わたくしの配属された研究室では、毎月1回のゼミがあります(また、研究室のSlackワークスペースもあり、そちらでも交流しています)。はじめの頃は特に話せることもなく、先輩方の進捗報告を聞いたりするぐらいでしたが、最近はM1のわたくしたちも、少しずつ何か話す感じになっている状況です。2020年3月には、修士論文の研究計画を出す必要があるため、先生や先輩方にあれこれと相談をしていきたいと思っているところです。
2020年の社会人学生生活
来年以降入学する方々には参考にはならないかもしれないですが、1年を通してオンラインで講義を受講できたのは、単位取得という観点からいうと、例年よりだいぶ楽なのではないかと思います。まず、そもそも通学しなくていいのが楽ですね。また、情報系の授業だと期末試験を失敗したらそれ一発で単位を落とすということも多かったようですが、試験の代わりに宿題やレポートを課されることも多く、一発勝負よりはだいぶ楽になりました(宿題やレポートは、それはそれで分量的には大変ではありますが)。
社会人学生ということで、仕事と学業との兼ね合いをどうするかが課題になるのは間違いありません。とはいえ、できることはほとんどありません。仕事は仕事で普通にやってますし、それに加えて学業分の時間が必要になるので、可処分時間はだいぶ減りました。特に、1年次はとにかく単位を取れるだけ取るという方針でやっているので、毎週土日は朝から夕方までまるまる授業という日々が続きます。また、前述の通り宿題やレポートも多く、それらにはかなり時間を使っていると思います(平日夜の時間に、週に5〜8時間ぐらいということもある)。まあ、がんばるしかないですね。
とはいえ、前述の通り授業がオンラインなので、やはり例年よりはだいぶ楽してるんじゃないかと思います。品川まで通うとなると、わたくしの場合、出かける準備なども含めれば往復で2時間以上はかかります。授業は朝9時20分からですので、毎週土日は8時前には起きなければならなかったでしょう。朝に弱いわたくしにとっては、かなりの苦行だったろうと思います。個人的にはやはりこの点が一番ポイントで、その意味では思いのほか楽だなという感想を持っています。いまと同じぐらい宿題とレポートがあってさらに通学も必要だったとしたら、かなりきつかったんじゃないかなあ。
本当に大変なのは「研究」
M1ということもあり単位取得にいっぱいいっぱいなので、これまでは「勉強」の話ばかり書いてきましたが、わたくしが大学院に入ったのは「研究」をするためです。とはいえ「絶対にこれがやりたい!」「この研究で世界を変えるんだ!」みたいな明確な研究テーマやモチベーションを持っていたわけではありませんでした。自分の力でやりたいテーマを見出し、それを研究としての一定の水準における成果として完成させる方法論と実績を作りたい、そのことで自分を次のレベルに成長させたいという目的を持っています。
そういう観点からすると、上述の「勉強」がいかに大変かといっても、「研究」に比べるとそんなにたいした問題ではありません。「勉強」はゴールが明確ですし、時間をかけさえすれば終わりますし、かかる時間もある程度は予測可能です(といいつつ、このポストを書く直前にも宿題をやっていましたし、期限に追われていますが……)。一方で「研究」は、そもそも何をやればいいのかというところからしてわかりません。また、どのレベルの内容であれば研究たり得るのかというのも難しいところです。単にやりたいことをやればいいというわけでもないですし(そういうやつが修士課程に行くのはどうかと思われるかも知れませんが、その批判は甘受しましょう)。
わたくしの場合は、会社でCTOと研究所の所長をやっていることもあって、会社や研究所全体としてこういうことをやっていきたいというコンセプトメイキングはやってきましたし、作りたい世界観もあったりはします。ただ、それを修士課程の研究とするには、限られた時間で実現可能な、適切な範囲にフォーカスする必要があります。また、いろいろな考えがありセキュリティ(に近い内容)についてやりたいというのもあって、会社の研究所のコンセプトと修士での研究とセキュリティ関連という特定の分野との間で、どういうことができるかを決める必要もあるという事情がありました。
そんな中で、それでもあれこれと修士課程を終了するにふさわしいと思われる研究テーマを、アイディアをあれこれと出したりしながら考えていました。それで、ある日のゼミの際にひとつアイディアを持っていって簡単に紹介したところ、「もっと問題を掘り下げるべき」だという助言を先生からいただきました。その後、ゼミの初めての懇親会があり「研究というのは世界観を持っているべきだ」という話もいただきました。そういう観点からいうと、自分の持っていったアイディアは、たしかに単にできることをやろうとしているだけで、世界観、つまりこうありたい、こうあるべきだという自分のアイディアや思想の表現にはまったくなっていませんでした。
それからまた、研究テーマについて思いあぐねる日々が続きました。そんな中で、現状がこんな感じというのを、以下のツイートのスレッドで書いたりもしています。これはこれで、後に「あの時は大変だったけど乗り越えたなあ」と振り返られることを願って、記録として書いておいたものです。
そんなことを書いているいまも、なんとなくやりたいことが見えてきたとはいえ、それが果たして修論としての研究にふさわしい「世界観」を持っているのか、そしてそれ以前に、そもそも自分にとって実現可能なのかどうかすらもわからない状況です。そのようなもやもやした考えを、浮かべては消すことを数ヶ月繰り返しているのは、かなりストレスフルな状況であるとは思います。「他の人々はどのようにして研究テーマを決めているのだろうか?」ということもよく思います。しかし、研究所の皆さんを見ていると、それぞれに研究テーマをこれと決めるまでには、かなり苦労をしています。そういうものなのでしょう。
なんだか、やたらネガティブな感じに読めるかもしれませんが、これがわたくしが大学院に求めていたことなのです。自分が本当にやりたいことを見つめ、しかし単に自分の興味関心だけでなく、アカデミズムにおける基準に従って自己の成果を判定し、さらには社会にとって役立つような新しい何かを生み出すこと。わたくしは、自らが何か成し遂げたいという強いモチベーションみたいなものを持っていません。それでも生きる上での課題の解決はできますし、ひとの役に立つこともたまにはあるでしょう。しかし、この先にもう一歩踏み込んで進むためには、そのような自分を変えていかなければならない。そう思って取り組んでいるところです。
おわりに
今年の4月に入ったJAISTでの社会人学生としての生活と、その中で感じたこと、いままさに大きな課題になっていることについて述べてみました。そして、この課題を乗り越えたあとに、さらに研究そのもののプロセスにおいてまた壁にぶち当たることが目に見えています。それもまた自分が望んだこと。楽しんでやっていきたいと思います。
4日目はminneのEngineering LeadでAndroidエンジニアのまたくによる「minne Android アプリ開発基盤における改善」です。続けてお楽しみください。