一年一回、生存報告。

何だか危機感の漂うタイトルだが、去年のタイトルと対になるようにするとこうなってしまった。
とりあえず生きてはいる。
まあ調子の良い時もあればそうでない時もあるといったところか。
逆に去年が働きすぎだった気がしないでもないのでこのくらいでちょうどいいのか?とも思うが、ちょうどいいくらいのところで留まるために今のような働き方を始めたわけではないので、来年はもう少し何とかしたいところではある。

調子の良い時ばかりフカしていても仕方ないので、とりあえず振り返っていこう。

お仕事の振り返り

終わったお仕事から終了順に。
2021年12月〜2023年1月 週2日 Go
この会社は平日1日、休日1日で稼働日を確保していたのだけど、徐々に自分に振れるようなちょうど良い粒度のタスクがなくなりつつあるような雰囲気を察知し、自分に振るタスクを調整してくれている方の負担のほうが大きくなってきたんじゃないかな…という懸念がありこちらから終了を打診した。
思えばこちらの前に同じく平日1日、休日1日で稼働していた会社の終了理由も同じようなものだったので、やはり他の社員の方と別働隊として休日も稼働するような働き方だといずれこういう状況になるものなのかもしれない。
社員だけで回るように組織が安定してきたのであれば良い事ではあると思うし、著名なエンジニアの方など集まる凄い開発組織になってきているので、今後は外から応援したい。
大規模リファクタリングを厭わず常により良い状態を目指して新規開発と改善のサイクルを積み重ねていく開発姿勢は刺激的で楽しいものであった。
個人的にはpdfcpuを利用したPDF既存機能の改善タスクがうまくいったようで、ある程度の満足感もある。
2020年12月〜2023年5月 週2日 Go
今振り返るとTwitterでたまたまお仕事募集のツイートを見かけて応募しただけの、それまで中の人と特に関係値も築けていないどこの馬の骨とも分からない私によくこんなタスクを任せてもらえたな…という感想があるが、とにかくそういう大きいやつとひたすら格闘していた。
というか、自分に関わらずこの決して多くない開発チームでこんなインパクトのあるものを開発しているのか…という"小さなチーム、大きな仕事"感は客観的に見ても強さであり美しさでもあるように思う。
よくここに混ざって開発ができたなぁ…食らいついていけていたかは何とも…だが。
最後のほうは決済が絡むような神経を使う処理があり、正直うまく着地できたかどうか分からないくらいのタイミングで終了させてもらった、というのが実情。

ここのお仕事での数年間で、Go,GraphQL,GCPなどについて随分深く使いながら学ばせてもらった。
手厚いレビューやE2Eテストの堅牢さと実行速度の改善など、勉強になる事が多々あった。
とあるサービスのAPIについても理解が深まった。(いや、あれはAPIというかもうある種の開発環境みたいなものだったな…。)
こちらも新しいプロダクトのリリースをアナウンスしていたりと発展が続いているようで、外から応援を続けたい。
2019年10月〜2023年9月 不定期 Scala
去年は幽霊部員化していたが、契約終了までの数ヶ月はScalaで新規バッチを開発したりと今年は多少稼働できた。
そもそもScalaプロダクトではAPIサーバーしか既存実装がなく、バッチの仕組みを新しく考えて作るところからだったので、それなりに手応えのあるお仕事だった。
ここはこちらから申し出て終了ではなく相手側都合だったので予定外と言えば予定外なのだが、いきなり終わったわけではなくそうなるだろうな…という空気はだいぶ前から感じていたので致し方なしというところ。
色々と会社や組織の再編やなんやかんやがあり、まぁこの状況で自分のような半端者の居場所はなくなりそうだな、という見立てはあった。
昔の同僚から誘われたのは純粋に嬉しかったし、前職・前々職からの付き合いの長い方々とまた一緒に働けるのも楽しかった。
特に契約終了に至った事に悪い感情はなく、むしろもっと自分が尽力できていれば…いやしかし開発サイドでどうこうできるたぐいの話でもなく…という申し訳なさや無力感は多少あるにはある。
中の人の情熱の火は途絶えていないと信じているので、今後もぜひとも頑張ってほしい。
(何だか謎の上から目線っぽくなってしまったが適切な言葉が浮かばなかった)

またビールが黒くなるまで語り尽くしましょう。
2019年9月〜現在 週2日 Scala
以下、継続しているお仕事。

相変わらずScalaでガリガリバッチやAPIの開発を続けている。
何かScalaの凄い技術をアクロバティックに使って洗練されたこんな素晴らしい事をやってますよ、という感じではない気がするのだが、地に足をつけてきちんとした自分たちがやるべき開発をやり続けていて、それを当たり前にやり続ける事自体が凄い事なのだと思う。
この会社を持ち上げるために他社を下げる意図はないのだが、過去Scalaを採用してはいるが何だか凄そうな技術を使う事に気を取られすぎて開発者自身が十分理解して実装できているのだろうか…?そのメリットを享受できているのだろうか…?と思い悩むような開発現場に遭遇したこともあるので、自分たちの手に負える範囲内で最大限にそのプログラミング言語の力を発揮させるというのは結構重要な事だと個人的には思っている。

Cats Effect,doobie,FS2を組み合わせた開発はとても快適で手に馴染んでいる。
現状、Scalaでのお仕事はここ一社となったが、ここでのお仕事をやっているとScalaでの開発が当たり前過ぎて、Scalaが下火だとか不人気だとかの世のトレンド(?)はただの雑音かのように聞こえる。
2022年6月〜現在 平日夜 Go,QuickSight
データ基盤業務的な事を引き続きやらせてもらっている。
Goでのバッチ開発もやっているが、Amazon QuickSightで分析やダッシュボードを作成するというのは他のお仕事ではあまり無い変わり種の作業。
QuickSight APIを利用した便利ツールなども開発しており、APIが安定していなかったりドキュメントが少なかったりで色々と苦戦する事もあったがそれも含めて楽しい経験になっている。
QuickSightに限らず、embulkでデータを用意したり、ParquetとCSVのデータを比較するためにありもののツールとSQLを駆使したりと色々やらせてもらっている。
2022年9月〜現在 不定期 Go
色々あって不定期ながらサーバーサイド開発者は自分一人のみ、という体制で始まったお仕事だったが、フルタイム開発者が増えて安心もあり、人が増える事による問題が起きないかの不安もあり。
ただ、ここは自分が一からサーバー側実装を書き始められた事もあり、こういう構成になっていたら人が増えた際にもスケールするはずだという自分の思いをブチ込む事ができた。
自己評価ではその思いは実際に人が増えた現在、それなりにうまくワークできてはいると思う。
今後、そんなに人は増やさず小さなチームのままやれる事をやり続け、そのうちあまり手をかけずとも回るようなプロダクトに成長してくれればいいのだが…まだ道半ばでやる事も色々ありそうではある。
今年10月〜現在 週2日 Go
こちらは唯一今年新しく始まったお仕事先。
9月で予定外に終わったお仕事の代わりがシュッと見つかってよかった。
Twitterでお仕事募集を見かけて応募したものになるが、直接の面識はない(はず?)ものの、間接的に同じところで働いていた事があったり何となく認知はされていたりという距離感の方が募集をされていた事もあり、割とすんなり話が進んだように思う。
Go, GraphQL, GCPなどを駆使した開発で、過去の経験が活かせている。
既存機能に追加する機能開発やリファクタリングなど少しずつできる事をやらせてもらっている。
改善できる箇所は色々ありそうだが、既存構成に寄り添いつつどこまでやれるのか、匙加減が難しいようにも思う。
お仕事振り返りまとめ
去年からの継続が3社、新しく始まったのが1社、終わったのが3社。
あと、確定ではないが来年早めに終わりそうなのが1社。
のんびりやるならこれくらいでもちょうどいいか、とも思っているが、前述の通りのんびりだとかちょうどいいだとかをかなぐり捨ててきたつもりなので、悪い意味で落ち着かないように前を向いていきたい。

…それはそうとX(旧Twitter)が徐々になんかアレになってきて、自分もあまりツイートしたりする機会が減り、別に執着しなくていいかと思っていたのだが、意外とTwitter経由で得られた仕事があった事を再確認した。

OSS活動

個人的な興味でGoのDBライブラリsqlcにコントリビュートしたらおせんべいをいただくなど。
自分のライブラリも久し振りに更新。

その他

今年もちょろちょろ旅に出た。
旅は良いね。
来年もガリガリコードを書いて、ちょろちょろ旅に出て、もふもふ猫を撫でて生きたい。
生きよう。

Copyright© 2011-2021 Shunsuke Otani All Right Reserved .