2021年を振り返りと2022年に向けて

年末気分が沈んでてまったくやる気が起きなかったから、新年あけてからの振り返りブログ書いてる

大学生のときとかは「年末?だから?」って感じが強かった気がするけど、もろもろ振り返る良い機会になってだいじだなーとかんじましたまる

お仕事(本業)

去年まで大学生してたけど、今年から就職してめでたくエンジニア 1 年生になった

バイトもしたことなかったので、ガチの社会人デビューでどきどきだった(と言ってもずっとリモートワークで一回も出社してないからあまり社会人してる実感はない)

ちゃんと運営されてるサービス触るのもはじめてだし、ちゃんとチーム開発してるチームで開発するのもはじめてだったので、基本的なところの学びは多かったと思う。開発フローとか、調査とか、デプロイフローとか、障害対応とか。 この辺りの話を記事で読んでも「ふーん」て感じだったのが、自分事として見れるようになったのを感じる

業務では機能改修・新規機能開発とかとかのよくある業務もやりつつ、かなり古いサービスで負債がたまっているので、フロントエンド環境の開発環境改善とか開発負債の解消とかもがっつりやった

  • CommonJS → ESModule 化
  • TypeScript へのリプレース

難しかったのはこの辺り。

一から作るのは簡単だけど、レガシーな環境を移行するってなると深い理解を求められたりして結構勉強にもなった。

新卒1年目なのに、技術スタックに手をいれるところまでやらせてもらえてとてもありがたかった。。まだまだ手を入れるところは残ってるので来年もがんばりたい

お仕事(副業)

就職前に少し働いていた会社で業務委託で働かせていただいてた

副業と言ってもお手伝いって感じではなくて事業立ち上げを一人でやってた

  • アプリケーションの全体設計
  • CI/CD 等の DevOps 周り
  • 本番環境の準備

この辺り全部自分でやらないといけなかったし、個人開発と違って動けば良いやでは困るので、いろいろ勉強しながら構築した。大変だったけど本業以外の経験つめて良かった

メンバーも増えて開発が進むにつれて開発速度落ちてきたなー、設計ミスったなーとかを感じ始めて、設計の難しさに打ちひしがれてる

経験不足もあるけど、たぶん考慮不足なのもあって時間が足りないを理由に思考放棄してしまうのとても良くないなあというお気持ち。

質とスピード(2020 春版) / Quality and Speed 2020 Spring Edition - Speaker Deck

この辺り眺めながら耳がいてえってなったのを覚えてる

技術

触ってた技術。 お仕事関係だとこの辺り

  • Perl
    • 本業のサーバーサイドで書いてた
    • これまで書いたことなくて、最初 Perl わけわからんってお気持ちだったけど、業務で書いてみると思ってたよりつらくはなかった
      • 結局業務で書くべきコードって、「チームのコーディングスタイルに沿っている」・「言語使用事細かに理解してなくてもわかる」、ようなコードだと思うので、基本的には同じ場所のコード真似してけばよかったりする
        • 逆に得意な言語だと魔術的なことできちゃうので、むしろあんま習熟してない言語のがだれがみてもわかるコード書きやすいのかもしれない?
    • でもやっぱ TS にどっぷりつかってしまったので静的型ないのはつらい、、脳のリソース無駄遣いしてる感がやばい
  • MySQL
    • 去年は SQL なんもわからんって言ってた気がするけど、そこそこかけるようになった。クエリのパフォーマンスも多少はわかるようになった
    • けど高度なもろもろはわからん。来年がんばろ
  • TypeScript
    • ちょうど1年ちょっと前くらいから TS 好きになって、個人開発でたくさん書いてたのもあって結構かけるようになった。
    • お仕事でもそこそこ大きいコードベース TS リプレースやれたし、副業は全部 TS なので結構書いた
    • NestJS
      • 副業では触ったことがある FW のなかで一番好感触だった NestJS を使うことにした。「実装から OpenAPI スキーマを自動生成する」ができてフロントと連携する開発体験がとても良いのと DI の仕組みが良くて正解だったなーと感じてる
    • Vue
      • 本業で書いてた
      • TS との相性がやっぱり悪くて(テンプレート部分の話、Vue3 の Composition API なら気にならないらしいけど Vue1 使ってる)、うーんって感じだった
    • React
      • 副業で書いてた、やっぱり Vue よりは好き
      • ただ、React Suspence とか React Forget とかいろいろ新しい仕組み出てきたけどキャッチアップできてなくてつらい
  • Rust
    • フロントつよつよになりたい & wasm が出てきてるので、軽く下地作っておきたいなと思って触り始めた
    • と言っても入門レベルでまだ全然ちゃんと触れてない
    • 基本的な言語仕様は好き(特に型システム)なのでこれから勉強していきたい
  • AWS 関係
    • EC2 くらいしか使ったことなかったけど、副業でがっつり使った
      • Cognito で認証基盤作ったり
      • Code なんちゃら系組み合わせて CD 環境作ったり
      • Elastic Beanstalk / Rds / Elastic Cache で本番環境作ったり
      • Cloud Watch / SNS とかで監視機構つくったり
    • ドキュメント読むのつらいのと、Cognito が嫌いになった

お仕事以外だと、OSS のライブラリとツール作って公開した

  • d-kimuson/vuex-typing
    • Vuex4 でもまともに型付けができなかったのでつけられるようにしたヘルパーライブラリ
    • 作ったのは良いけど、今ではもう Pinia が出たので新規で使うことはなさそうで悲しい。また型パズルの練習になったしいっか :cry:
  • d-kimuson/ts-type-expand: vscode extension for expand type of typescript
    • 交差型とかジェネリクス通した複雑な型を展開できる VSCode 拡張機能
    • ちょっと動作が安定してなかったり重かったりはするけど、めっちゃ便利なので全 TypeScript ユーザーにおすすめしたい
    • スターも 23 ついたうれしい
  • d-kimuson/type-predicates-generator: generating predicates and assertion function by type definitions.
    • 型情報からランタイムチェックに使える predicates 関数を自動生成できるツール
    • 結構伸びてスター 43 もらえたのと、紹介記事の感想を観測してランタイムチェックのライブラリとかをいろいろ知れて勉強になってよかった
    • JSer Info にデビューできてうれしかった

お仕事してると課題があって、解決する OSS 作りたくなる。

それ自体は良いけど、type-predicates-generator とかはすでに類似ツールが存在していたので、他のライブラリやツールがないかちゃんと調べておく & 日常的にキャッチアップしておくのも大事だなーと思った(まあ type-predicates-generator の場合は既存ツールでは足りなかったので、いずれにせよ作ったんだけど)

今年は使ってる OSS にコントリビュートするみたいなことができなかったから、来年はしていきたいなあ

アウトプット

書いたやつ: ブログ | きむそん.dev

Zenn 含めて1 3 本書いてた。月1ペースなのでがんばったえらい。

会社のテックブログも3本書いた

会社では、技術広報関係にも関わらせてもらってたけど、アウトプット用に言語化するとわかってない部分がわかったり、自分のなかで整理できたりするのでとても良いなーと改めて思った

プライベート

とりあえず田舎暮らしで車ないのきついよねってことで泣きながら免許をとった!!

副業入れながら毎週自動車学校も通ってまじでがんばったわじぶん、、えらすぎる

副業と自動車学校でプライベートの時間もだいぶ削っちゃってたのと、社会人1年目だから仕事集中しようってのがあって、なんか一般的な趣味っぽいことがあんまできなかったから来年はなんかできるといいなー。

趣味も、プログラミング除いたら適当にアニメやら映画見るとかソシャゲやるくらいしかないので、なにか新しい趣味はじめて QOL あげていきたいけどいざ意識的に始めようと思うと難しい

あと久しぶりに好きな人ができたんだけど普通に振られちゃってしんどかったなー。。

割とメンタルは弱くないと思ってたんだけど、やばくなるのを避けるのが得意なだけでお豆腐メンタルっぽいことがわかったw

メンタルも鍛えていきたい!

らいねんやるぞー

  • お仕事
    • 本業はお仕事のほうで考えるぽ
    • 副業
      • 開発スピードが落ちないような(≒ 負債になりにくい)意思決定をしたい
      • 自分ってよりチームのパフォーマンスがあがると良いな
  • 技術
    • フロントエンド強くなりたかったけど、あんまりキャッチアップできてなかった
      • リプレースとかで土台の力はついた感あるけど、新しい内容のキャッチアップはあんまり
      • 本業副業ともにあまり高度なフロント側を書く機会がないので、必然そうだよなーって感じもする
      • 2022 は意識的に手を動かしていきたい!
    • 体系的な勉強をする時間が社会人になってから取りずらいなーって感じてるので、ちゃんと時間をとって勉強していきたい。DB 周りとか、デザパタとか、アーキテクチャとか。基礎体力をつける
  • キャリア
    • 2021 はとりあえず仕事がんばろーって感じだったのであんまり意識してなかった
    • 2022 はちゃんとどう進むか、なにが必要かみつめて仕事していけるといいな
    • スペシャリスト適正が高いのか、マネージャー適正が高いのか自分でもよくわかってなくて難しい、、
  • アウトプット
    • 悪くないペースなので、今年のペースでがんばりましょ
  • プライベート
    • QOL あげていくゾ
    • 運動不足(?)で 4 キロくらい太ったので痩せる
    • あと髭剃りが面倒なので脱毛したい。どーせやるなら全身いってもいいかも

年末にはすごい人たちの振り返り記事がたくさん流れてきてて、自分は自分ってスタンスだったつもりなのに病みがちになって驚いた

上をみても仕方ないので、来年も自分のペースでがんばろー