毎年恒例になっていたので一応書いておこう。
さて今年は何をしていただろうか…。

何と言っても COVID-19 による完全リモートワークへの移行が大きかったが、
仕事内容自体はさほど去年までと変わっていないように思う。
去年から始めた仕事は1社を除いて今年も継続しており、
契約終了した1社に変わってまた別の会社の仕事も始め、何だかんだ週2日ずつ3社 + 不定期で1社という形は変わっていない。
週2日 Scala (1日出社,1日リモート), 週2日 Go (半日午後から出社, それ以外リモート),
週2日 Scala (両方出社), 不定期で Scala (基本リモート)という形で働いていたが、
コロナ禍で全ての会社がリモートとなり、それまでは曜日によってあっちに行ったりこっちに行ったりとしていたのが、
基本家で PC 立ち上げるところまでは一緒、やる仕事だけ違うというような形態になったのが3月末頃。
以降は、各社リモートワークの取り組みがそれぞれあるなぁ、というのを興味深く伺いつつ、
自分としても完全リモートでの働き方のペースを掴むのに工夫した今年前半だった。
会社によってコミュニケーションツールを色々と模索していたようだが、だいたいどこも Zoom に落ち着いたように思う。
個人的には、進捗の出力は完全リモートになってもそんなに落ちてはいないのではないかと思っているが、
過集中状態になったり切り上げ時を見失ったりとオーバーワーク気味な時期もあったかもしれない。
落ち着いて作業に取り組めるのは良い事である一面、脳の一部があまりに使わなすぎて退化し始めているのではないか、という謎の懸念もある。
…しかし、この働き方は来年以降もしばらく続きそうだ。
完全リモートになった事により東京以外に引っ越すなどするような話も見聞きはするが、
自分自身は特にそういった思い切った行動にも出ず、東京の自室でチマチマ作業をする日々が続くのではないだろうか。

仕事先については、昨年9月〜11月から開始した3社が現在も継続しており、丸一年以上お世話になっている事になる。
特に1年程度でコロコロ仕事を変えたいわけでもないが、変わらず継続しているのがコロナ禍の影響があるのか無いのかは正直よく分からない。
特に代わり映えの無い作業を続けているということでもなく、業務知識が深くついてきたのでよりコアな部分の開発を担当したり、
緊急度は高くなく後回しになっているがやっておきたい、しかし面倒でなかなか手をつけられない作業をやったりと
それなりに貢献できているところもあるかとは思っている。

直近では sentry-java のライブラリバージョンを1系から3系に上げるというのが結構歯応えのある作業だった。
breaking change も多く少しずつ書き換えて移行するのがやりづらく、
また何かミスるとそれまで流れていた Sentry 通知が止まってしまう懸念もあり、確認にも慎重にならざるを得なかった。
こちらは無事移行でき、きちんと動いているようで一安心だ。

会社によっては来年以降のロードマップを共有してもらい、
なかなか楽しそうな事になりそうなのでそこに辿り着くまで開発メンバーの一員として関わっていられると良いな、と思えるところもある。
個人的には、あいつ使えないなとなったらスパッと切ってもらいたいし、
自分に問題が無かったとしても正社員が増えてきたり週2日程度の稼働で振りやすい作業がなくなってきたりしたら
お役御免で構わないしそれが許容される契約形態だと思っているので、
とにかくこれからも末長くよろしくお願いします、とはあまり言いづらいのがもどかしいところではある。

去年から携わっていたお仕事で1社、今年11月で終了したところもある。
代わりに12月からまた別の会社で週2日 Go を書いている。
新しく始まったところは、Go の比較的新しめのバージョンを使っており(以前のところは事情があり少し古いバージョンを使い続けていた)、
golang.org/x/xerrors の新しいエラー機構を使っているな、などといったところに着目したりもしている。
また、GraphQL を結構きちんと(?)使っている印象もあり、
スキーマ駆動とはこういう事かな、というのを体感したりしつつ開発に慣れている段階ではある。
適切に型付けされた Scala を書いていると「型にコードを書かされている」という感覚になる事があるが、
「スキーマにコードを書かされている」という表現になるだろうか。
まだ始めたばかりではあるが自分の実装した箇所が年明けにリリースに乗りそうな事もあり、
まずまず悪くない滑り出しではないだろうか。

仕事以外で振り返ると、今年はOSS活動というか、パブリックなOSSリポジトリにPRを出して貢献するという事があまりなくなったように思う。
以下は、仕事を通して気づいたPRになる。
diffx
Depends on scalatest minimum required modules
refined
Add take method to NonEmptyList and NonEmptyVector
最近はあまりガツガツと、OSSにコントリビュートしてやるぜ、という気概があるわけでもないのだが、
仕事で使う中で気づいたもの・貢献できそうなものがあれば今後もなるべく続けていきたいとは思う。

来年に向けて。
実はフリーランスエンジニアという立場では一旦なくなり、個人事業主を廃業して法人化を検討している。
フリーランスエンジニアになり2年経つので、法人化の理由はその辺から察する人は察するのではないだろうか。
といっても肩書きが変わるだけで今までとは何も働き方が変わるわけでもない。
お仕事先各社にも法人契約に切り替える事の了承は得ており、快く応じてくれた各社に感謝しつつこれからもやっていこう。
フリーランスエンジニアをやめる際に、「フリーランスを完走した感想ですが…」と言いた過ぎたのだが、
全然完走しておらずレーンを変えて同じコースを走り続けるだけなので、今後ともよろしくお願いします。

Copyright© 2011-2021 Shunsuke Otani All Right Reserved .