たなっちのメモ

ロボットとWebサービスを触ってたハッカソン好きの地方工業大学生。最近は機械学習とコンパイラ、OS開発をこっそり勉強中。時間と余裕とモチベがあったら書く予定(?)。

2020 年の振返りと 2021 年の目標

あけましておめでとうございます.
今年もよろしくお願い致します.

さて,約 1 年前に下のような記事を書きました.

tanacchi.hatenablog.com

2019 年の振り返りをして 2020 年の目標を掲げたわけですが,
これが自分にとっての備忘録になったりしてなかなか良かったので
今年も書きたいと思います.
壮絶な自分語りになってしまいますが悪しからず.

2020 年の Tweet 振返り

例によって Tweet から 2020 年を振り返ってみます.
研究と就活が忙しくなってから投稿数が激減してました.

2020 年は PC のハードディスクの故障に始まりました.

卒業研究

PC 故障の影響をダイレクトに受けたのが卒業研究でした.
修理に出したら出したで結局 3 週間戻ってこなくて
ヒヤヒヤしてました.
魔物が住んでいるとはよく言ったものです.

「年明け 2 日目から学校に来てるやつなんてお前くらいや」
っていうツッコミは置いといて,
1 月 2 日はブログを書きに研究室に行ってました.(卒論書け)

1 月 3 日はちゃんと研究をしに来ていましたが,
研究室の GitLab が落ちてて何もできなかったらしいです.

割とガチで厄年感はありましたね.
ちなみに 2021 年は 24 歳になる年ですので前厄です.


まあ 2 月 13 日が卒論の提出締切なのに
年明けまで目次も実験データもないっていうのがなかなかヤバイのですが,
割と呑気でしたね,ええ.

まあ研究室の(使い慣れていない)PC で 結構頑張って書いていた記憶が有ります.

これは本当に思う.ミーティングが週 2 っていうのも丁度良かった.

なかなか限界大学生やってたのではないでしょうか.

考察やら結論をまとめるフェーズになると,
自分の研究がどういう立ち位置で,
何を成し遂げた研究なのかが急にわからなくなって

色々ノートに書きなぐって考えて
先生に相談したりしてましたね.
本来目次を書く上ではっきりさせておきたい内容ですが,
そこが大事だとその時は気付いてなかったですね.
大学院でまた研究をする身としては非常に良い経験だったと思います.


直前になると再び研究室の魔物が動き出して,
提出の前日にプリンタが動かなくなりました.

(例によってって何やねん)

結局その日は研究室に泊まり込みで
細かい修正をしたり,見直したり
プリンタのトラブルシューティングしたりしてましたね.
朝方になって印刷した論文をパラパラめくっていると
図のキャプションが狂っていることに気付いて
急いで印刷し直そうとすると今度は紙がなくなって…

思えばなかなかハチャメチャでしたね.
修士論文はこういうことにならないようにしたいです(切実).

実はその日バイトをしてから学校に戻ってきたのですが,
バイト後に家に帰っていたら間に合ってなかったと思います.

いや本当に懸命な判断だった.
リスクマネジメントですね()


1 ヶ月ちょっとで執筆と実験をやってしまったわけですが,
なんだかんだ 100 ページ近く書いてましたね.

当時はこんなことを言っていますが,
実際ソースコード貼ったら 200 ページを超えてしまって
ソースコードを貼り付けるのは)やめとこうね(by 先生)ってなりました.

発表前日に同期と発表の練習や研究の立ち位置などについて話し合ったりしてましたが
卒業研究をする中で一番良い(学生同士での)ディスカッションだったように思えます.


まあいろいろ合ったわけですが,
卒論発表もなんとか無事に終えて卒業しました.

これは後からわかったことですが,
1 年間(休日含め)ほぼ毎日研究室に行ってたためか
研究室の床に爪痕を残してしまっていたみたいでした.

プロ研

2020 年のプロ研もすごかったです.
僕がプロ研を語るのも変な話ですが.
(プロ研とは 2019 年 4 月にロボット団体の残党で創設された
プログラミング系サークルです.)

卒業してしばらくして,追いコンで追い出されちゃいました.

まあまだ居座ってますがね.

2020 年のプロ研は オンライン化や学外の人を巻き込んだ規模拡張など
コロナ禍に対応しつつ,数々のハッカソンで賞を取るなど 素晴らしい発展を遂げました.

年度始めの方は新入生をどう勧誘・教育するかなどで 苦労されていたみたいですが
しっかり部内で話し合ってアクションを起こせていましたね.

私としては,Cammel さんの LT に参加させて頂いたり,
プロ研の戦力向上のために
あるワークショップの企画を練ったり(練っただけ)してました.


【Online LT】第3回 Cammel LT会!こぞってご参加ください~!

ワークショップ,春休みにできたらいいなあと思ってます.
逆に春休み逃したら頓挫すると思います.
(それを見越したドキュメント作りをしてたりもする)
あとスキマ時間(そんなものはないかも知れない)を使って
ProChart (後輩が以前作った学習チャートサービス)を復刻しようかと目論んでおります.

プロ研さんにはこれからも期待です.

アルバイト

学部生の頃は約 4 年間塾講師のバイトをしていましたが,
大学のキャンパスが変わって地理的に難しくなったため,
新たにバイトを探すことになりました.

初めは他の塾を探したりしていましたが,
普通に考えてコーディングのバイトをするべきじゃんとなりました.

とは言え,私の住んでいる地方には
せいぜい「Word 文書に画像を貼り付ける」みたいな求人(実話)しか見当たらず困っておりました.

そこで以前ハッカソンで知り合った同じ大学の先輩づてで
某 IT ベンチャー企業のエンジニアスタッフをさせていただきました.
立ち上がって間もない会社で,本来は研修からスタートするところをスキップさせていただくなど
めちゃくちゃ待遇がよかったです.

塾講師(薄給)だった頃はこんなことを言っておりましたが
マジで 10 倍になった月もありました.(当者比)

そこでシステムの基盤構築やら研修生のメンターやら教材の添削やらをさせていただきました.
パフォーマンスはあまり良いものではなかったかも.

研究と就活が本格的に始まってからは稼働率が激減してしまい,
(体が持たないので)
結局 11 月頃に辞めてしまいました.
少しもったいないですが,しばらくバイトせずに研究に専念します.

研究

本業の研究ですね.
研究室がスタートする前の春休みから本で予習してました.


入学前は,ちょうど就活の時期がコロナの大不況と重なってしまうと考えて,
修士を長期カリキュラム(4 年)で卒業しようとも考えたりしてました.

今考えれば D 行けよという話になりますが.
あと割と就活には特に影響を受けませんでした.


入学して数日で緊急事態宣言が出て
大学に入れなくなるというハプニングもありましたが
当研究室ではそれを見越してリモートワークに移る準備をしていたので
その後がめちゃくちゃスムーズでした.すごいです.
(Slack,GitHub などを使ったことがない新入生向けの講義も有りました.)


ゴリゴリ数学を扱って機械学習アルゴリズムを研究するので
入りたての頃は数学の知識のキャッチアップが大変でした.
そもそも数学があまり得意ではなかったので…

内容自体はオープンキャンパスで感じた以上に面白く,
プロ研の後輩に紹介したいと感じるほどでした.

このツイートの半年後くらいに UKR の LT をしました.


これまで実装を主力として戦ってきましたが,
それよりもレイヤの高い抽象的な概念などを考える必要のある研究で,
早く形にすることに力を入れてきた身としては苦労することも多かったです.

研究室の同期にそういう力を持っている人がいて,
自分の力の及ばないことが悔しくて,苦悩する時期もありました.
しかしその時期に強く意識してから考える力が随分養われたように思えます.
(生存バイアス)


ゼミの発表なども
クオリティを求めて私なりにかなり頑張っていた気がします.

もっと早く準備を始めろという話ですが.

研究テーマも,「これがしたい!」より
「こういうことを知りたい,できるようになりたい」で入ったため
なかなかはっきりと希望を出せず先生を困らせておりました.

今ではテーマは固定されましたが,↑ で言っているドキュメント解析とは程遠いテーマです.
そのテーマも,研究室で 10 年前まで行われていた研究を復刻させようということで,
先輩もよく知らない(だろう)研究内容であるため,
わからないことに関して前提から共有する必要があるという大変さがあります.
同期の N 君とバディを組んで,ヤーヤー言い合いながら楽しく勉強させてもらっております.

就職活動

こちらもかなり頑張りました.

学部生の頃と言えば,とりあえず給料が良いところというように考えて 企業を選んでいたみたいです.

身体が資本であることはわかってたみたいです.


大学入学からソフトウェアに興味を持ち,
環境が良かったこともあって
ロボット系からゲーム, Web サービス,言語開発,ハッカソンなどなど
本当に色んなことに興味をもってチャンレンジできました.
一方で自分が結局何にモチベーションを持っていて
何が強みなのか,どういう会社で活かせるのかというのが
全くわからず困っておりました.

周りからは何故かベンチャー基質って言われていました.


自己分析や就活の進め方については 主に サポーターズさん,CareerSelect さん,TechTrain さんに大変お世話になりました.(宣伝ではない)

(サポーターズさん関連のツイートしかしてなかった.)


特に自分の強みについては就活の終盤まで悩んでいました.

学年が 3 つも下の後輩も同じ悩みを持っていて驚きました.
しっかりしてるなあ.

自身の強みに関しては,ある企業の
技術プレゼン選考の対策で突き詰めたことで
はっきりさせることができました.
これもまた良い経験でした.


以前りゅーと(@rkdora)さんからも
おすすめされた逆求人(面談)イベントに参加しました.
この手のイベントでは,面談の際に自己紹介プレゼンをするのですが,
自分の趣向や強みを 嫌でも まとめて発表する必要があるので
自己分析の機会としてもすごく良かったです.

もちろん,業界研究や企業研究があまりできていなかった自分としては,
イベントでたくさんの企業の方のお話を聞いたり,価値観を共有できるという点でも
本当に良かったです.

後半の方になると,面談するのが 4 回目の企業様や
既に選考に進んでいる企業様とマッチするケースもあって
ちょっと申し訳ない気持ちになりました.(母数を増やすという意味では)

あまり逆求人イベントに参加しすぎると
イベント後の面談のお誘いや日程調整が大変なので注意ですね.

結局,就活を通して 5 回も逆求人イベントに参加して
本選考に進んだのも 1 社を除いて全て逆求人イベントで関わりを持った企業となり,
私にとっては完全に就活のベースとなりました.

サポーターズさん,CareerSelect さん,TechTrain さんには大変お世話になりました.


ここで多くを語るつもりはないですが,
面接官がお顔を見せてくれないタイプの面接だったりとか
バリバリに自己紹介や ”ビジネス的目線” のアピールをするつもりで臨んだら
ソートアルゴリズムを組ませるタイプの技術面接だったりとか
コーディングテストでトンチンカンな回答を送ってしまったのに合格してしまったりとか
それなりにエピソードもありました.

技術面接で落とされたときは
悔しさを糧に競プロやエンジニアリングの基礎を勉強できたので
それもまた良い経験だったなと思っております.(美化されている)


ピーク時には並行で 10 社の選考を進めていて
平日は面接 or 面談 or 研究室のミーティングがある状態で,かなり大変でした.
それが 10 月下旬から 12 月上旬まで続いて,
初めは色々な話が聞けて楽しいと感じていた私も
終盤は普通に就活が辛くなっていました.


12 月上旬に特に志望度の高かった企業から内定をいただき,
急激に就活が落ち着きました.

正直,内定をもらってからが一番キャリアについて悩んだと思います.

技術研鑽

就活に関係あったりなかったりしますが,
技術研鑽もぼちぼちやっておりました.
研究と就活があったのでがっつり,とまではできませんでしたが.

大学入学時に買った生協 PC からついに買い替えました.
(尚その生協 PC は今でも使ってます)

届いて半日で Windows が起動しなくなりましたがなんとかなりました.

彼女から誕生日プレゼントでキーボードも買ってもらいました!

「いい感じ」に見せるための技術が欲しいなと思い,
Vue.js と(諸事情により)React を勉強しました.

CSS を書くのが苦だった私にとっては
Vuetify と Material-UI は神ライブラリでした.


チームマネジメントの授業や
インターンシップを通してチームで活動する上での考え方や
デザインシンキングのスキルを身につけようと頑張っておりました.
エンジニアとして働く上でもそうですが,研究においても活かせたと思います.


継続的に価値を提供する上での
「テスト」を書く価値を知り, TDD や CI を研究の傍らで勉強した時期もありました.

TDD Challenge のロゴですが,
Red,Green,Blue のサイクルを回しているのが表現されていて
めちゃくちゃセンスが良いなあと思います.


学部 3 年生の夏から開発していたローグライクゲームですが,
昨年の夏くらいから研究などの理由で開発がストップしていました.
このままでは就活でのアピールに使えないじゃんと思って
今年の秋くらいにサクッと敵を実装したりしてました.

これがまたサクッとできてしまって,
設計を練りに練った甲斐が合ったなあと思っていたのですが,
後の企業面談でその構造が
デザインパターンの Command パターンの再発明だと知りました.
やはり無い知恵絞るより先人の知恵を借りたほうが効率的だなと感じた次第でした.


今年は就職活動をしていたというのもあって
企業の方から伺った技術(特に Web 系)への興味やモチベーションが高かった気がします.

Web+DB Press もポチっちゃいました()

Http サーバ の自作はまだできてないです.

インターンシップなどでチーム開発で課題解決やプロダクト開発をすることが多かったのですが,
面白いプロダクトができそうなのにインターンシップ限定だったりしたのがちょっと残念に思っておりました.
そこで,個人で継続的にプロダクトを作れないかなと思ってアイデアを膨らませることもしてました.
また,そのときに使えるのでは?みたいなモチベーションで Zoom の SDK を触ったりもしてました.

その他

今年はオンライン化が劇的に進んだ年でもありました.
就活に関しては面接もインターンもすべてオンラインでした.

慣れない生活で作業効率が上がらず,
それを補うために夜ふかしをしてしますことも多かったです.

10 月くらいからコロナが落ち着いて
研究室に足を運ぶことが増えたのですが,
気軽に話やディスカッションできるというオンサイトの良さを実感しました.

だからオンサイトが良い!というよりは
オンサイトでのパフォーマンスや作業のしやすさを
どうやってオンラインで再現しようかということを考えたいですね.

また,就活と研究が本格的にスタートすると,
休日は面談イベント,平日は面談か面接か研究室のミーティングという状態で,
心身ともに疲弊してしまっていた時期もありました…
今考えれば本選考を受けすぎたのが大きいかなと思っています.

そして 2020 年最後のツイート…

いやしょうもな。

2020 年の目標確認

2020 年の目標は達成できたのかということで確認したいと思います.
ちょっと書くのが大変になってきたのでサクッと行きます.

1. 数学に強い人になる

強くはなれませんでした.
修士で強くなれたと言えるようになるには
道のりが長すぎるかなと思います.
ただ,アルゴリズムの導出過程をなぞることを繰り返していると
本質的にアルゴリズムを理解できると同時に
他のパターンでも応用が効くと思っています.

また,本を読むにしても解説してもらうにしても
数式を避けて通ることが出来ないというのもあって,
数式を読んで理解する力は
すいぶん上がったように思えます(当者比)

多様体」を扱う機械学習アルゴリズムをしていることから
多様体って結局何だ?と思って例の黄色い本で勉強したこともありました.

基礎数学5多様体の基礎

基礎数学5多様体の基礎

2021 年に期待しましょう.

2. ここだ!と言える企業からの内定をもらう

これは達成できましたね.
まあ正確には,エントリーした企業はすべて「ここだ!」って言えるところで
その中から1社内定をいただけたという感じです.
やはりめちゃくちゃ心の余裕が変わりますね.
(面接を受けてそれぞれどうだったかみたいな話はするつもりないです.)

3. 駆け出しエンジニアが備えるべき力を備える

これは就活中にも痛感しました.
面談で Web を支える技術をおすすめされたので
速攻で買って読みました.
ネットワークに関しては IT パスポートレベルの知識もない状態でしたので
かなり伸びたのではと思っております.

4. Rust でコンパイラとOSを自分なりに作る

これはちょっと無理でしたね.
コンパイラと OS を自作するより先に
もう少し高いレイヤ(業務に影響するくらい)の部分の知識を
インプットしたほうが良いかもしれないです.
まあ近年の WASM の登場によって就職してからの業務と Rust が無関係とも言えなくなってきているので
Rust 自体の勉強はしてます.(年末調整の一貫ですが)
Rust 自体良い言語と言われてますからね.

先ほどあった,ProChart の復刻版のコアは
Rust(Actix-web)で実装しようかなと思っております.

2021 年の目標

1. 研究を楽しく頑張る

まあ今でも研究は楽しいのですが,
論文執筆や発表に追われて疲弊してしまうようなことは避けていきたいです().
これはチームマネジメントの授業で学んだことですが,
良い成果を出すためには良い準備をすること,
そのために早く取り掛かること

を強く意識していきたいです.

2. エンジニアとしての市場価値を高める

大きく分けて,

  1. Web 関連の基礎,Docker などのコンテナ技術
  2. デザインシンキング
  3. 組織づくり・開発プロセス

の 3 つについて,ちょぼちょぼと知識を蓄えていきたいと思っております.
(やはりメインは研究なので)

特に 1 つ目に関しては↓ の記事を参考に
基礎知識を備えた状態でエンジニアになりたいと思います.

qiita.com qiita.com qiita.com


というわけで,大変長くなりましたが(URL 含め約 15,000 文字)
2021 年もどうぞよろしくお願い申し上げます.

Visit my Home page.