📝

趣味のプログラミングで博士号を取った社会人の覚え書き

2022/09/27に公開
3

※追記:本記事では論文誌、学会名や社外講座名などを伏せております。もし必要でしたらSNS等にてお尋ねください(少しググれば見つかりますが)。

私は2022年3月に博士号(工学)を取得しました。いわゆる社会人博士というものです。
自分が博士課程に在籍していたときに、他の方のブログを読んで参考になったので、このようなものは数が多いほうがよいだろうと考え、自分の記録も残しておこうと思います。この記事が誰かの参考になれば幸いです。

tl;dr

研究者としては並以下の、プログラミング好きな研究者(40代管理職)が、4年かけて、「新しいソフトウェア作ったよ」という仕事とは無関係のテーマで博士号を取りました。

どのような人間か

私は企業の研究所に務めている研究者です。物理実験系の修士課程を修了し、情報系の研究所に入社するという、やや異色の経歴です。博士課程進学時(2018年4月)の肩書は主任研究員で、部下のいないいわゆる名ばかり管理職というものでした。

私は研究者としては並以下であるという自覚があります。入社10年経って論文や国際会議の主著はゼロ。入社2年目に全国大会で一度だけ発表したことがある、という状況でした。目立った業績がないので当然ですが、研究テーマもコロコロと変わり、これといった専門性はありません。

念のために付け加えておくと、研究とプログラミングは大好きです。論文を読むことやプログラミングはまったく苦になりません。しかし残念ながら、教科書や論文の難解な数式を読み解き理解するほどの知能は持ち合わせていませんでした。

なぜ社会人博士課程に進んだのか

名刺に「博士(工学)」とかついたら格好いい!というミーハーな動機です。
研究所に新卒入社したときから、いつかは博士号取れたらよいな、という漠然とした希望はありました。しかし日々自分の実力不足を痛感する中で、ちょっと無理そうかな、とも思っていました。

転機は2014年にソフトウェア工学について学ぶ1年間の社外講座に放り込まれたことです。この講座には、修了後に連携大学院の博士後期課程に進学するというオプションが用意されていました。「ひょっとしたら、これはチャンスかも!?」と思い、この講座に本腰を入れることを決意します笑。決意の表れとして、この講座では最後に修了製作として何らかの課題解決に取り組む演習があるのですが、この演習で論文を書くことを目標にしました。幸い?この年は正直仕事の負荷が低かったので、体感的に50%のリソースをこの講座につぎ込みました。

修了製作では各受講生に講座の講師(基本的に大学の先生)が指導員としてついてくれます。この指導員との出会いが幸運で、私はここで初めて「研究のやり方・考え方」を学ぶことができました。これはまさに蒙を啓かれるような経験で、一度コツを掴むと、自身で研究テーマを設定し、
研究結果をまとめて発表するということが苦ではなくなりました(トップカンファレンスに通すような力は依然ありませんが、採択率40%くらいの国際会議なら、まぁ通せるだろう、と思える程度になりました)。

狙い通り、修了製作で取り組んだ内容を論文化し、講座修了後も指導員に指導頂きながらブラッシュアップして、2015年に投稿、2016年に無事掲載されました。和文論文誌(ソフトウェア論文)です。
研究のコツを掴んだ私は、翌年2017年に仕事のテーマで国際会議に投稿・発表し、これで論文1、国際会議発表経験1という会社の社会人博士課程支援制度の要件を満たしたため、「いまの自分ならいけるのではないか」と考え、社会人博士課程への進学を決意。講座受講時にお世話になった指導員に相談し、すでに講座は修了していましたが、連携大学院進学というオプションを行使して社会人博士課程に足を踏み入れました。

どんな研究?

上記講座の修了製作で取り組んだのは、ちょっと便利なソフトウェアを作ってオープンソースで公開してみる、というものでした。会社の仕事とは全く関係なく、プログラミング好きだし、せっかくだからOSSとか作って公開してみたい、という動機です。作成したソフトウェアの有用性を実験で評価し、その結果を論文化しました。
博士課程では、上記ソフトウェアをさらに発展させることをテーマとして選択しました。社会人博士課程では仕事に関連するテーマを選択する人が多いと思いますが、私は全く関係ないテーマにしました。これは振り返ってみるとメリット・デメリット半々かなと思います。

博士号取得要件

私が進学した大学院の博士号取得要件は、入学後の論文採録1、国際会議発表経験1または英語の試験をパスすること、というものでした。
博士号取得要件は大学によって異なると思いますが、この要件はもっとも緩い部類に入るのではないでしょうか。
しかし先輩方の博士論文を見ると、実際に論文1報のみをそのまま博士論文としている方は全くおらず、最低でも論文2報、国際会議1報の内容をまとめているようでした。
実際私も、進学前の論文1報と進学後の論文1報、進学後の国際会議1件をまとめました。
ただし、私の論文2報はソフトウェア論文という、ソフトウェアの有用性という観点で査読される論文であり、純粋な学術論文とはやや異なります。ですが博士号取得要件としては特に問題ないようです。

博士課程

1年目

博士課程の指導教官は、前述の講座でお世話になった方とは別の、連携大学院に在籍している先生でした。必ずしも先生の専門ドンピシャのテーマではなかったにも関わらず、いつも的確にご指導頂きありがたかったです。

1年目は、開発しているOSSをどう発展させていくかを考え(進学前から考えてはいましたが、指導教官にご指導頂きながら具体化し)、開発・評価を行いながら論文化を進めました。

社会人博士課程でも2つくらいの講義で単位を取得する必要がありました。しかし私は上述の講座の連携大学院というオプション特典で、講座の講義で作成したレポートを提出するだけで単位をもらうことができました。なので授業には1回も出ていませんし、テストも受けていません。

2年目

書き上げた論文を著名な英文ジャーナルに投稿しましたが、速攻でエディタキックされました笑。「ちょっとうちのジャーナルのスコープじゃないね」という理由でした(そこは自覚しつつ、スコープに合うよう表現したつもりだったのですが力不足でした)。

そこで、論文を微修正し、今度はソフトウェア論文として和文論文誌に投稿しました。

また、並行して国際会議発表経験1の要件を満たすために、ソフトウェアのさらなる改良と評価を行いました。
投稿する会議は、採択率を重視して変な会議に投稿しないほうが良いと指導教官に助言頂いたので、COREランクB以上の会議をターゲットとしました。

仕事ではこの年、課長にされてしまいます。これは想定外でした。おそらく会社にとっても想定外で玉突き事故のようなものだったのだと思います。管理職は明らかに私のキャパシティをオーバーしており、入社以来初めて「忙しい!仕事が終わらない!」という状況になりました。しかし元々社会人博士課程に費やす時間はそれほど多くない、というか、元々趣味でやっているプログラミングの延長のようなものであったため、博士号取得への影響はそれほど多くはありませんでした。このタイミングで管理職になっていなかったら3年で博士号取得できていたかと言われると、そんなことはなかったと思います。

3年目

4月に国際会議への投稿を完了し7月にアクセプトされました。コロナ禍なので発表はオンラインでしたが、これで無事に要件の1つをクリアしました。

昨年投稿した和文論文誌は改訂後再判定との連絡があり改訂を行いましたが、残念ながら不採録となりました。
この時点で3年での博士号取得は絶望的となりました。2年での早期取得ができるとは期待していませんでしたが、3年で取得できないのは少しショックでした。

不採録の主要因は評価不足でした。これは自覚しており、私の研究テーマは開発したソフトウェアの有用性を第三者に使ってもらって評価するのが自然なのですが、評価実験がコロナ禍でやりづらいこともあり、なんとか人を使った評価実験を行わずに有用性を主張できないか頑張ったのですが力及ばずでした。
あきらめて、指導教官のツテを活用させていただき、人を集めて評価実験を行い、同じ論文誌に再度投稿しました。

ちなみに、国際会議で発表したネタでは、Amazon Mechanical Turkを使ってオンラインで被験者を募集、評価を行いました。

2月に投稿論文の不採録通知を受領しました。
正直今回はいけるんじゃないか(条件付き採録にはなるのでは)と思っていたのでショックが大きかったです。3年での博士号取得はすでにあきらめていましたが、本当に博士号取れるのだろうか、と不安になりました。

不採録の主要因は、これまで英文ジャーナル→和文論文誌→改訂再投稿と、初稿にリバイズを加え続けたことにより、全体的に分かりにくくなってしまったことのようでした。
レフェリーにも、「改訂後の再投稿を強く勧める」と言っていただけたので、このテーマのまま、一から構成を見直し再投稿することとしました。

年度末に指導教官から、
「博士後期課程の単位取得済みなので、退学しても1年間は博士論文審査を受けられる。1年あれば、今直している論文も何とかなると思うので、今、単位取得済み退学して学費を節約する手もあるよ?」と教えていただきました。
しかし、私はこの時点で博士号取得できるのか不安だったので、
「少なくとも論文が条件付き採録になるまでは学費払っておきます」
と回答しました。

4年目

この年、仕事では関連会社に出向となりました。
出向自体は予想していましたが、もう半年か1年後だろうと思っていたので、このタイミングというのは想定外でした。
出向先での立場は一応管理職ですが、課長というよりはチームリーダーという感じで、前の職場に比べると管理しなければならない範囲(人数)が1/6以下になったため、かなり余裕ができました。

5月頭に論文投稿、7月に照会があり論文を改訂、8月末に念願の採録に漕ぎつけました(恐らくなのですが、前回不採録時と同じ方に査読を回して頂き、回答が早かったのではと考えています)。ちょうどよいタイミングだったので、上期で大学院を単位取得済み退学し、下期半年分の学費を節約することができました。

博士論文は3年目の下期から少しずつ書き始めていました。日本語でもよさそうだったので日本語を選択し、国際会議の原稿を和訳、進学前の論文と、採録になったばかりの論文をくっつければ大枠は完成です。
よく、仕事のテーマで博士論文をまとめる場合、異なるテーマの論文をまとめて一つのストーリーにするのが大変という話を聞きますが、私の場合は完全に同一のテーマだったので、この点は非常に楽でした。
ただ、それでも博士論文としてもまとまりを出すための1章、それから最終章の書き方は経験がなく、指導教官や主査の先生方の助言が非常に役に立ちました。

11月に予備審査会、1月に博士論文公聴会が行われ、2月に審査通過の連絡を頂き、3月に無事に博士号を取得することができました。

正直、博士号取得要件を満たすための論文採録が一番大変で、博士論文の執筆および審査会・公聴会は大変ではありませんでした。特に審査会・公聴会は、もちろん主査の先生方に恵まれたというのもありますが、20代のころならまだしも、40代管理職経験者であれば、仕事で何倍も辛い詰められ方を経験していると思います笑。

社会人博士課程を振り返って

テーマについて

自分が本当に興味のあるテーマで博士号を取得できたので後悔は無いですが、博士課程2年目の時点で、仕事のほうで論文1報、国際会議2件出せたので、
「こっちのテーマ選んでいたら、もう博士論文書けたな。。。」
とは思いました(その場合テーマの一貫性持たせるのに苦労したと思いますが)。

社会人博士を考えている人に、テーマ選定について何かアドバイスできるとすれば、人を使った評価が必要なテーマは評価実験がボトルネックになるかも、でしょうか。

大変さについて

「社会人博士課程はとにかく忙しくて大変。睡眠時間削って頑張った。」なんて話をよく聞きますが、私はそこまで大変ではありませんでした。平日の夜と週末、平均すると月に15時間程度でしょうか。私の場合は、社会人講座の修了製作でベースのOSSを作り上げていたのも奏功していると思います(このOSS開発時は週に15時間くらいかけていました)。
私の周りの多くの人は2年で博士号を取得しており、私はその倍の時間をかけているので、「これを2年で終わらせろと言われたら確かに大変、というか無理」と思います。

私の場合、休みの日に論文読んだりプログラムを書くというのは普段からやってることだったというのも大きいと思います。ただし、今まで趣味としてやっていたのに、「どうせ読むなら博士論文に関連する論文読まないと。どうせプログラミングするなら開発しているOSS触らないと。」と考えてしまい、少し楽しめなくなってしまうというのはありました。

金銭面の負担についてですが、会社の社会人博士課程支援制度で、2年間学費の半額を補助して貰えたのはありがたかったです。それでも私大を選ぶ気にはなりませんでした。修士課程を修了した母校で博士号を取りたいという気持ちもあったのですが…。私大で修士まで行かせてくれた両親に改めて感謝です。
大学院後期課程には3年半在籍していたので、自腹で2年半分の学費を支払ったことになります。それなら、支援制度の要件を満たすための論文投稿前に、支援制度を使わずに進学してしまってもあまり変わらなかったかもしれない(その場合、3年もしくは早期修了の可能性もあったかもしれない)とも思います。ただし前述のとおり、論文が1報だけで本当に博士論文として認められるのか疑問ですが。

成果について

あまり卑下すると指導頂いた先生にも失礼なのは承知しているのですが、それでも、こんなんで博士号もらっちゃっていいの!?趣味でソフトウェア作っただけなのに!?という気持ちがあります。
先輩方の博士論文を見てみても、なんかすごそうなことやっているなぁ、それに比べて自分は…、とは思いますが、要件は満たしているし審査会も通っているので胸を張っていきたいと思います(そう自分に言い聞かせる)。

おわりに

だらだらと頭から思いつくままに書いていったら結構な長さになってしまいましが。この記事が将来の誰かの参考になれば幸いです。

GitHubで編集を提案

Discussion

zacky1972zacky1972

大変興味深かったです.
ソフトウェア論文を投稿した先(特に国際会議)の候補についての情報を記載していただけると,類似の研究テーマを志望する学生の研究指導の参考にすることができますので,大変有用です.ご検討いただければと思います.

グライグライ

論文になりましたリポジトリを教えていただけると幸いです🙏