博士(ソフトウェア工学)の学位を取得しました

2022年3月付けで博士(ソフトウェア工学)の学位を取得しました。今回はその振り返りをします。社会人の方で同じように学位取得を目指す方の参考になれば幸いです。お金も時間もかかることですので、安易に学位取得をお勧めすることはしませんが、僕自身は博士の学位を取得してよかったと思っています。リンダ・グラットンがLIFE SHIFTで述べた「人生100年時代」の話がよく取り上げられますが、そこに向けて楽しくやっていけるマインドが不思議とついたことはこのチャレンジの中で得られたことの一つです。そしてそれはこのチャレンジの中で出会った方々のおかげだと思っています。改めて感謝の意を表します。ありがとうございました。学位そのものがいただけたことはもちろん嬉しかったですが、それよりもこの根拠のない自信を得て、人生を楽しくやっていけそうなメンタルを得られたことは大きかったです。というのも、後述しますが僕が博士の学位取得を目指した理由の一つが将来への漠然とした不安がきっかけであることによります。それでは振り返りとしていくつかテーマを挙げてお話ししたいと思います。

社会人として修士課程、さらに博士課程へ

大学に進学することを考えたきっかけは、自身のキャリアとソフトウェアエンジニアとしての技量、知識、経験に対する漠然とした不安でした。学部生の時、家庭の事情で修士課程に行けなかったことが心残りであったことも関係していますが、それよりはこれらの不安の方が要因として大きかったです。

僕の場合は、社会人学生を受け入れ、さらに僕自身が興味を持てる分野を研究している先生を探すことからはじめました。それが2018年の春〜夏のことだったと思います。以前の記事にもその頃のことはまとめています。この時から、博士の学位を取得することを考え、指導いただく先生と学位取得までの計画をしていました。この時の計画が予定通りに進み、成果が積み重なったことで学位を取得するに至った、ということになります。

今振り返ると、我ながら無謀なことをしたな、とも思いますがチャレンジしてよかった。そして、研究をちゃんとしたこともない僕を受け入れてくれた研究室の先生、研究科の先生方の寛容さには頭が下がります。先生方に出会えていなかったら確実に今はないでしょう。

興味のある研究に取り組める幸運

僕の博士論文のテーマはざっくりというと大規模アジャイル開発とソフトウェアアーキテクチャに関するものです。研究が大変でも楽しく取り組めていた理由の一つは、興味を持てる分野の研究ができたことでしょう。今振り返ると、自分が興味を持てる分野を研究でき、博士論文としてまとめられたことは幸運でした。

多くの方が機械学習に関する研究に注目しています。そんな中で自分の興味に従って研究経験が乏しい社会人学生が研究テーマを選ぶことは大変でした。実際に修士課程の入学試験の際、僕は機械学習に関する研究をすることを面接でお話ししたのですが、紆余曲折あって自分が本当に興味を持てるアジャイル開発とソフトウェアアーキテクチャに関する研究に取り組み、修士論文はそのテーマを扱いました。博士の学位を取得するまで、様々なハードルがありましたが、研究テーマをしっかりと決め切ることが僕にとっては一番大変でした。意外にこれが決まらない。特に僕のような駆け出しの研究者にとってはこれが大変でした。ちょうど別記事にこの時のことを以下のように書いてました。まさに迷走してました。

考えてみると、こういった形で研究が一つの大きなテーマで一つ一つつながっていることは僕には偶然のことのように思えました。初めはアジャイル開発についての研究を進め論文発表までしていたのですが、その後にどんな研究をしていくべきか迷子になり、別の機械学習関連の研究を始めたりしました。そちらも研究会で発表したりするなどはしました。横道にそれたりはしましたが最終的には元のアジャイル開発という分野に研究のテーマを戻すことができ、さらにもともとやりたかったソフトウェアアーキテクチャについての研究をすることができています。もう一度やってみて、と言われても同じように研究活動を進め、学位論文を書くところまでできるかわかりません。

引用:社会人博士を始めてしばらく経ったので振り返り

指導いただく先生、研究室のメンバ、大学の研究科の先生方、そして学会でお世話になった方々など多くの巡り合わせがあり、最終的に自分が興味を持てることに取り組み、学位が取れたことは幸運だったと感じています。たまたまうまく成果が積み重なった、と思っています。当初立てた学位取得までの計画通りではあったので、先生はここまで考えておられたのかもしれませんが今となってはそれもわからず(詳細こちら)。僕自身も地道な積み重ねをする日々でしたが、それ以上に僕ができることはありませんでした。毎日積み重ねをするのみ。細かなテクニックの話にはなりますが、僕の場合は習慣化をするためポモドーロテクニックを使ってゲーミフィケーションの要素を入れながら積み重ねを楽しむ工夫をしてました。以下は実際に年末年始僕が学位論文を仕上げる作業をポモドーロタイマーを使って計測した内容です。

興味のあることをしているとはいえ、集中して日々積み重ねをする習慣化をすることは苦労しました。その点、ポモドーロテクニックとこのアプリのおかげで自分の作業を可視化し、さらにゲーム要素(ex. 昨日より1ポモドーロ頑張ろう、のようなモチベーションアップ)を取り入れることができたので博士課程の1年はうまく積み重ねをすることができました。僕のパーソナリティとして、真面目でまめな方だとは思いますがやはり怠惰なところはあるのでこういった習慣化するための工夫と、さらに幸運がなかったら学位は取れていなかったでしょう。(余談ですが、こういうことをしないと集中して作業ができないことはなんとかならないかと時折思っていたものですが、森博嗣さんの集中力はいらないを読んでそんなこと考えなくていいかと諦めることができましたのでおすすめです)

誤解なきように、という意味でいいますと、熱心な先生方のいる研究室、すなわち研究成果の出ている研究室にお世話になることがまずは大切で、その上で幸運にも興味のある分野で研究ができるとハッピーですね、という考えでいます。この辺は僕もいつもツイート拝見してるOdaさんがちょうど呟いてまして、それはそう、と思ってました。ですので、僕の場合は学科の先生方にも恵まれたのと、さらに研究成果もうまく積み重ねることができた、ということでもう一度生まれ変わって学位取得のプロセスをやってと言われてもまあまあ辛いなと思ったりしてます。

今後

僕は業務として研究開発に取り組んでいるわけではありません。ソフトウェアエンジニアとしてプロダクト開発を担当しています。ですので、これまでよりも論文を執筆するペースは落ちると思いますが毎年学会発表をするよう進めたいと思っています。現状、それ以上の今後のことはあまり検討できていません。修士課程に進むことを決めた際はこちらの記事でも書いていますが以下のように考えていたようです。

これは正直まだふんわりとしています。僕としてはドクターという資格を例えば海外で働く際に信用してもらうラベルとして利用したい、できるのではないかと考えています。今は本当にこれだけ考えています。まだとってもいないですしね、これでいいのではと、と考えています。

今後のキャリアについて改めて考えていますが、まだこの時と同じ状況です。ソフトウェアエンジニアリングの大切さは最近日本語訳もされたGoogleのソフトウェアエンジニアリングでも書かれていましたが、ソフトウェアエンジニアリングを大切にする組織やチームで一緒にソフトウェア開発を楽しめるといいなと思っています。今後についてはゆっくり考えます。

おわり

学位を取得したことに関して振り返りをさせていただきました。僕の場合は研究室探しから数えると4年ほど学位を取得するまでかかりました。4年の間にはさまざまなことがあり(ex. 転職、結婚、引っ越し、研究室変更・・・)、振り返るとよく予定通り学位を取れたなと思います。自分でも驚きです。他方、学位を取っても僕自身は研究者としてはジュニアすぎますし、先生方はもちろん、Twitter上で見かける学位を取得した方々の業績を見ると僕がまだまだ未熟すぎることに気づき打ちのめされます。それでも自分がしてきたことには自信を持ってますし、成果を出していくためには地道に続けるのみ。ですので、これからも同じ姿勢でチャレンジしていきたいと思います。それでは本記事は以上です。同じように学位の取得を考えている方、特に社会人の方で学位取得を考えている方の参考になれば嬉しいです。