🐈

2023年のエンジニアリング振り返り

2023/12/31に公開

年の瀬なので 1 年のエンジニアリングを振り返ろうかなと思います。

本業ではエンジニアリングマネージャー 2 年目に突入し、だいぶマネージャー業に慣れました。

副業では物流系で Rails と GraphQL を書いていました。事業の資金的な理由で契約が終了となったので、数ヵ月くらいはアルゴリズムや個人的に興味をもった技術の勉強をしていました。

11 月ごろから物販系の副業を開始し、Go を書きはじめています。

風呂を徘徊する猫
風呂を徘徊する猫、かわいい

Technology

Backend

Ruby on Rails

本業のメインアプリケーションであり、副業でも触っていたので一番触っています。

本業のおかげで RubyKaigi 2023Kaigi on Rails 2023 にも参加させていただきました。はじめての大型オフラインカンファレンス参加で、とても楽しく刺激をもらえる経験をしました。

キャリアスタートから Rails を触っているので目新しさはないですが、大きい Rails アプリケーションとの向き合い方を考えはじめ、モジュラモノリスやマイクロサービスを今年からインプットしはじめました。

https://www.amazon.co.jp/dp/4873119316

TypeScript

Backend としては Cloudflare Workers を中心に個人レベルで触ってました。

Hono や Deno などでサクっと作れる体験はよいですし、型があるのはうれしい。

Bun や Vite などランタイムやチェインツールが高速化しているのも人気を後押してそうですね。

まるっと TS プロダクトの開発体験は良いんだろうなと思います。

Go

本業でも一部採用されており、ちゃんと理解しておけるようにアルゴリズムや競プロの言語として使い始めました。

11 月ごろから副業先で本格的に書いています。新規プロダクト領域を手伝っているので規模は小さいプロジェクトです。

まだ書き始めなので感想レベルですが、Rails と比べると時間はかかるなと思う反面、素朴な書き方は変更可用性が高そうだなという印象です。ライブラリや言語のアップデートコストも非常に少なそうな印象でした。

一方で複雑なドメインをモデリングに落とし込むとき、enum や union、Result 型などが欲しい!というときがくるのでしょうか。まだわかりません。

あと、まだ nil との向き合い方もわかってません。

個人的には 1.21 の slice 関連をふくめ、ジェネリクスを起点に便利関数が増えていく Go の世界が楽しみです。

Frontend

Next.js

本業や副業で使っていますが、BtoB 事業に関わることが多く、高パフォーマンスよりも機能を!となりがちで、App Router と真剣に向き合えてません。

高度な機能や破壊的変更をふくめ、足回りが重くなってきた印象です。

Remix

Cloudflare Workers/Pages を触るにあたって使い始めました。素朴に書けるの結構好きかも、という気持ちです。

Next.js の App Router あたりからアップデートコストが上がってきた反面、Remix はアンチポジションとしてアップデートコストが低いことを目指そうとしています。その辺も含めて選定しやすい印象ですね。

本業や副業先でも一部採用されており、2024 年は触る機会が多くなるフレームワークかも?と思っています。

Other

Cloudflare

Cloudflare Workers をはじめ、Edge で動くシリーズは安くて使い勝手がよさそうで、とにかく勢いを感じます。

Hono や Remix を使って試してみました。

https://zenn.dev/necocoa/articles/remix-v2-with-cloudflare-pages-d1

プロダクション環境で使っているところも増えており、成長を一番楽しみにしてます。

Passkeys

個人でも Passkeys に順次切り替えています。

内容理解と実装時間の把握のため、簡易実装もしてみました。

https://product.st.inc/entry/2023/12/12/222708

今年は多くの Passkeys の記事も拝見され、注目を集めているという印象です。

Stripe

いろんなプロジェクトで使っており、ちょっとずつ理解が深まっています。

今年はサブスクリプション、カスタマーポータル、Connect の送金などに向き合いました。

来年は 3D セキュアと向き合いそうです。

Shopify

副業先で利用しているので、今後向き合うことが増えそうです。

Stripe もそうですが、よくできているプロダクトの API は非常に参考になるなぁと思います。

インフラ

IaC をはじめ、まだまだ向き合えてません。じっくりどっぷり浸からなきゃなと思う危機感はあります。

マネジメント

地続きでやっていたテクノロジマネジメント、プロジェクトマネジメントはやりつつ、自分の能力として足りてなかったピープルマネジメントに時間を使っていました。

チームを任せられる人が増え、役割を任せることの重要性が非常に理解できた1年でした。

https://www.amazon.co.jp/dp/4873119944

https://www.amazon.co.jp/dp/B09MS8BML8

採用にも時間を使っていたが、こちらは成功とはいえず、魅力を作るのは非常に難しいなぁという感想です。カジュアル面談は 1 年で 55 回やったそうでした。

また、言語化し伝えていくことの重要性を感じ、訓練しています。

思ったことを整理し、雑でもアウトプットしきる場として、しずかなインターネットをはじめました。

反応を意識することなく書けることで、整理しきれてない情報でも気軽に書けるハードルの低さがよいなと思っています。

https://sizu.me/necocoa

まとめ

今年は技術としては浅く広くインプットをし、マネジメントとしての自分の底上げを意識しつつ、ピープルマネジメントを中心に時間をかけた 1 年でした。

一方で技術的なアウトプットが少なかったなと思っており反省点です。

来年は横断的で難しいプロジェクトのリードとして入るので、プレイングマネージャーとして動く時間を作り、アウトプットしつつ推進力を出すことに注力していきたいです。

Discussion