2024 年の振り返り
- #blog
今年はなんとなくキャリアに変化のある年だったと感じているので、振り返りをしておこうと思います。
フロントエンドエンジニアではなくなった
去年まではフロントエンドエンジニアとして活動していたのですが、今年はほぼ UI のコードを書かない一年だった気がします。
自分は CS の学部を卒業したわけではなかったので、社会人になってからは幅広い技術分野を経験して基礎を固めたいという思いがありました。 その一方で、入社してからは技術面ではフロントエンドしか経験出来てない状況が続いていたので、自分でチーム移動を希望しました。
その結果、今年は Next.js App Router のインフラ周りや DevOps の改善をしつつ、後半では新しいオンプレ基盤への移行プロジェクトのチームメンバーとなりました。 そのチームでは、Go と MySQL を使って gRPC のサーバーや job queue を実装したりしていて、初めてバックエンドの開発をしっかりやっているなという感覚をつかめています。 これからサーバーの運用が始まっていくので、インフラ面も含めて引き続き学んでいきたいと思います。
バックエンドの開発をやって感じたのは、データの整合性をとるのが大事ということでした。 フロントエンドと比較して、処理の冪等性やエラーハンドリングに注意してコードを読み書きすることが多かったです。 あとは、マイクロサービスでのデータの整合性をとることの難しさもイメージできるようになりました。
副業を始めた
今年の1月から、本業を週4にして Node.js でのバックエンド開発の副業を始めました。 本業以外で働いた経験は今までなかったので最初はうまくいくか心配でしたが、特に大きな問題なく 1 年通して続けることができてよかったです。
副業を初めて一番よかったところは、自分のスキルや本業の色々な側面を客観的に見れる良い機会になっているという点です。 入社してから 4年も経つと、良くも悪くも本業のスタイルに自分の思考が順応しきっている気がします。 そんな中で副業で全然違う文化を持つ会社の様子をみると、より幅広い視点で物事を考えられるようになったという実感を持っています。
文化の違いで言うと、副業先では積極的に生成 AI 系のツールが導入されていて、そこで得られる気づきが貴重でした。 これらのツールは今後の開発スタイルを大きく変えうるし、キャリアを考える上でも無視できないかなという印象があるので、今後も流れには乗り遅れないようにしていきたいです。
CS の基礎体力をつけた
今年は業務に直接的に関係ない CS の基礎となる本や記事をたくさん読みました。 OS や TCP/IP は Rust で実装してみたいとずっと思っていたのですが、今年にできてよかったです。 CS 周りの知識はちゃんとついてきたなという自信も持てるようになってきました。
- 入門 コンピュータ科学 ITを支える技術と理論の基礎知識
- Writing an OS in Rust
- チームトポロジー
- SQLアンチパターン
- 入門監視
- [試して理解]Linuxのしくみ
- Rustで Wasm Runtime を実装する
- Goならわかるシステムプログラミング
- 体験しながら学ぶ ネットワーク技術入門
- ソフトウェアアーキテクチャの基礎
- Goでゼロから作る 自作TCP/IPプロトコル サーバー (Rustで実装した)
- Crafting Interpreters (読み中)
読んだ本の中では「ソフトフェアアーキテクチャの基礎」が、今の自分の考えに非常にマッチしていてしっくりくる本でした。 技術を学べば学ぶほど、課題を解決をするときの絶対的な正解はなくて、数ある選択肢の中からトレードオフを選択するという感覚になります。 ソフトフェアアーキテクチャの基礎では、テックリードとしてどのようにそのトレードオフを決断・運用していくのかという点について丁寧に書かれていました。
ちなみに、2025 年は以下の本を読もうかなーと考えています。
- プログラマーのためのCPU入門
- データ指向アプリケーションデザイン
- 失敗から学ぶ RDB の歩き方
- マルチテナントSaaSアーキテクチャの構築
- Googleのソフトウェアエンジニアリング
自然をたくさん見に行った
運動不足解消も兼ねて、今年は精力的にハイキングに行ってみました。 屋久島とマッターホルンは念願の場所だったのでとても満足したのと、今行きたいと思っている場所にすぐに行くことは大事だなという実感しました。
- 3月: 屋久島
- 6月: スイス (マッターホルン)
- 9月: 上高地
- 10月: 奥多摩 (御岳山、ロックガーデン)
来年は、今年よりも多くのところに行こうかなと思っているのと、Yamap を使い忘れることが多かったのでちゃんと使っていきたいです。 海外だと、アイスランドとクロアチアに来年は行こうと思っています。
終わりに
今年は、腰を据えて CS の基礎を勉強して、自分のスキルの幅を広げ始めた 1 年でした。 そろそろ 30 も近くなり、結婚もしたので、今後は技術に没頭して向き合う時間を取れることは減ってくるのかなと思っています。 そうなると短時間で効率的にインプットとアウトプットをする必要がありますが、それを支えるのが CS の基礎体力だと自分は思っています。 また、生成 AI の活用が進んでいくと、生成 AI の出力を自分で検証できるくらいの知識は幅広く持っている必要があるなという印象があります。 こういった中で、ずっとやりたかった CS の基礎体力をつける時間を多く取れたのはよかったです。 Biome へのコントリビューションも今年はあえてやらないようにしていました。
来年は、今年以上に今行きたいと思っているところへ行きつつ、今年の途中で辞めてしまった英語学習を再開したいです。 海外にも行ってみたい場所がたくさんあるので、それらの体験をより良くするためにも英語は話せるようになりたいです。
新卒の頃は自分の技術面でのスキルアップのことばかりを重視していたのですが、今は技術の幅が広がったことで日々の活動をどう社会に還元していきたいかを考える時間が増えてきました。 最近は、知識は学んだり知っていることは前提であって、その知識を使って組織・サービスにおける課題を解決することが大事というのを感じているので、そういった活動をできるようにしていきたいし、そういった活動に集中できる場所を見つけていきたいです。