2021年の振り返り
にっしーです。せっかく今年は個人ブログを作ったので、1 年を振り返ってみようと思います。
時系列振り返り
1 ~ 3 月 : 修論と本の執筆
この時期は、主に修論と本の執筆を行っていました。大学院での研究分野は、情報科学の手法を化学に応用するケモインフォマティクスと呼ばれる分野であり、特に自分は最近流行りの深層学習を扱っていました。
コロナ禍の大学院生活は、研究室の体制の問題などもあって大変でしたが、なんとか修論も書ききり卒業することができました。研究室の友人とバドミントンができなかったり、卒業旅行も行けなかったですが、自分はまだ 1 年間だけなので恵まれている方なのかなと思っています。
本の執筆は、昨年の 12 月に教授から博士課程の方と一緒に本を書かないかと話を持ちかけられました。本を書く機会はめったにないと思ったので、あまり深く考えず2つ返事で書くことに決めました。2、3月は執筆に多くの時間をかけたのですが、思ったより内容を書くことができず、なかなか苦労しました。特に、最新の研究の内容をわかりやすく説明する必要があったのですが、わかりやすさを意識するあまり内容が薄くなりがちなのが悩みでした。
個人的なところだと、社会人生活に備えて、昇降式デスクと椅子を買いました。修論執筆中は、時々腰を痛めたりしていたのですが、働き始めてからほとんど腰を痛めることはなくなりました。昇降式デスクは、かなりいい買い物をしたと満足しています。
4 ~ 6 月 : 社会人生活の始まり
Web エンジニアとして、Cybozu で働き始めました。Cybozu では、4 月から 3 ヶ月間の研修期間があり、非情報系出身の自分にとっては基礎をじっくり固める期間としてありがたかったです。また、配属前には複数の開発チームに 2 週間程度参加することができるのですが、配属先のミスマッチがなくせる良い制度だと思ってます。
個人的なところだと、この頃はまず会社と社会人生活のリズムになれるのに集中していた感じでした。完全リモートでの入社なので、オンラインで 1 からの関係性を築くことに慣れたとはいえ、知らないところで精神的な負担になっていたような気がします。
7 ~ 9 月 : kintone 開発チームへの配属
この頃は、kintone 開発チームに配属され、主に OJT を受けていました。詳細は以下のブログに書いたので、そちらを見てもらえると助かります。
個人的なところだと、まず 8 月に書いていた本が出版されました。内容が専門的なのもあったからか、出版社の方からの校正も予想していたより少なく、自分の書いた文章のほとんどがそのまま本になりました。技術文書向けの textlint ルールプリセットに通しているとはいえ、出来上がったものにはあんまり自信がなかったので、Amazon のレビューに好意的なコメントが来た時は嬉しかったです。
https://www.amazon.co.jp/dp/B09BQ5GF6G/
そして、ようやく実家をでました。引っ越しの際には、以下のブログをとても参考にしました。
引っ越しは、様々な決断を素早くこなしていく必要があり、予想していたより精神的な負担になりました。正直、社会人 1 年目に始めての引っ越しをやることはおすすめできません。社会人になる前に引っ越しの経験をしていれば、もう少し楽にこなせたのかもしれません。また、家電なども 1 からすべてそろえたので、人生で一番お金を使いました。お金がなくなるときは一瞬なんだなというのを再認識できました。
10 ~ 12 月 : フロントエンド刷新チームに配属
10 月からは、kintone 開発チームの中でもフロントエンド刷新チームに所属し、Closure Library で書かれているコードを React に置き換える仕事をしています。こちらも、詳しくは先のセクションで紹介したブログに書いたので参考にしてもらればと思います。
個人的なところだと、まず Next.js のキャッチアップのためにこの個人ブログを作りました。ブログを作る際には、スタイルを 1 から書いたり、Remark のプラグインを自作したり、Performance がなるべく出るように bundle サイズの大きなライブラリを使わないようにしたり、 Docsearch を導入してみたり、技術的に色々試しながら作っています。せっかく作ったブログなので、これからも長く付き合って行きたいです。その他には、ESlint プラグインのテンプレートや Babel プラグインのテンプレートを作ったりしました。また最近だと、スクラップを中心に Zenn でアウトプットを始めたり、初めてAdvent Calendar の記事を書いたり、Advent of Code 2021 をやったりしています。Advent of Code は、Rust の練習としてやってみたのですが、こちらのブログの通り自分も楽しくできたのは 15 日目までした。そこからは、問題の内容を理解するのにも一苦労という感じで、続きませんでした。。。あと 5 問くらい残っているので、年明けも少しずつやっていこうと思います。
読んだ本
以下で紹介する本以外にも、マスタリング TCP/IP、Web ブラウザセキュリティを現在進行系で読んでいますが、思ったより本を読めなかった感じがしています。来年は月 1 冊ぐらい読んでいきたいところです。。。
問題解決力を鍛える!アルゴリズムとデータ構造
アルゴリズムを体系的に学びたくて読んだ気がします。全体的に丁寧に解説がされていて、アルゴリズムがあまり得意ではない自分にとっても分かりやすかった本でした。
https://www.amazon.co.jp/dp/B08PV83L3N
ドメイン駆動設計 モデリング/実装 ガイド
研修中に進められた本で、ページ数もそんなになかったので読んでみました。DDD 初心者向けの本だと思います。2 年くらい前まで続けていたバイトでの開発を最後に DDD に触れる機会は全くなかったので、思い出すのにはちょうど良い本でした。
WEB+DB PRESS Vol.122
今年から Rust を書くように意識をしていて、「Rust で実装!作って学ぶ RDBMS のしくみ」という特集に惹かれて読みました。この本を読んだ直後に、研修で MySQL のインデックスの話があって、講義の理解の助けになったのを覚えています。
https://www.amazon.co.jp/dp/B092Q8SKDB
Clean Architecture
個人的に有名な本として気になっていたのと、社内で輪読会がちょうど開催されるというタイミングの良さもあって読みました。抽象的かつ古い内容も多くて、個人的には読み切るのが大変でした。
https://www.amazon.co.jp/dp/B07FSBHS2V
まとめ
振り返ってみると、本の執筆、社会人生活、引っ越しなど、初めて経験することが多かった 1 年だったと思いました。2022 年は、最近行けてなかった旅行にも行けるようになる 1 年だと個人的には嬉しいです。エンジニアとしては、自分で手を動かしながら、バックエンドとフロントエンド問わず幅広く技術を吸収し、今年以上に目の前の課題を技術で解決できるようになりたいです。