【月次報告】エンジニアになって14ヶ月が経ちました
こんにちは、しゅんです。エンジニアになって14ヶ月が過ぎましたので今月も振り返りをしていきます。
※エンジニアになって13ヶ月目の記事も投稿しています。お時間ございましたらご覧ください。
■エンジニアになって14ヶ月が経ちました
今月は色々と予定の変更が重なり振り回される結果となってしまいました。以下の3点が主な出来事でした。
①6月末に納品予定だったマンション管理サービス(React, TypeScript, gRPC案件)の納品が1ヶ月延びて(短くなるならまだしも延びるのは珍しい気がします)引き続き、異常系のバグ修正やコードのリファクタをしていました。と言っても本来6月末の納品に合わせた実装だったためほとんどリファクタがメインだったのですが…
②7月頭から走る予定だった、自分が見積もりを出したReact, TypeScript, Firebse案件では2週間ほど要件定義・見積もり辺りのスタートが遅れ、その間atomsコンポーネントの作成に着手していたのですが、なんと7月の半ばに案件自体が頓挫してしまい白紙に戻ってしまいました。
③そして7月後半にJQueryからReact, TypeScriptへのフルリプレイス案件にアサインが決定し今はそちらの環境構築やコンポーネント作成をしています。メインエンジニアとして技術選定、アーキテクチャ設計など全て一任していただいています。
このようにバタバタした1ヶ月だったのですが結果的にReact, TypeScriptの案件に入れたので良かったです。また、割と余裕のある1ヶ月を送ることができたので、時間をかけてReactのドキュメントや技術記事を読むことができインプット、またZennへのアウトプットをすることができました。
メインエンジニアとして0→1案件に参画するのは初めてなのですが今回の案件ではマンション管理サービス(React, TypeScript, gRPC案件)での反省点を活かした実装をしたいと思っています。
■14ヶ月目を過ぎて思ったこと
今月は定時に帰れることや、業務中に技術検証する時間もいただいていたので個人開発のアプリの強化を行いました。今や450コミット以上しているちょっと大きめなアプリとなっています。
色々と検証する中である程度大きめの規模のアプリでないと見落としが発生するので昨年からコツコツと作り続けて良かったなと今更ながら思います。
0→1案件にアサインされる想定やマンション管理サービスで実装できなかった技術を色々と試したりリファクタを重ねました。具体的には下記のような実装に着手しました。
React.Suspense、React.lazyを用いた遅延ロードの実装
useMemo、useCallbackを用いたパフォーマンスチューニング
useEffectでのデータフェッチを全廃しreact-queryを用いたトップレベルでのデータフェッチに切り替え
react-error-boundaryを用いたエラーハンドリングの強化
CSSフレームワークであるMUIとCSS In JS(emotion)を用いたUIの改善・統一(レスポンシブにも対応)
Cypressを用いたe2eテストのクオリティを強化
ディレクトリ構成の全面的な見直し(近日行われるアーキテクチャプレゼン大会の準備も兼ねて)
react-hook-form、yupを用いたフォームバリデーションの強化
リンター系(StyleLint, ESLint, husky, lint-staged, Prettier)の実装と検証
CircleCIを用いた自動デプロイ、自動テストの構築
本番環境だけでなく開発環境のインフラを用意など
焦って実装をしていると今ある知識の中から解決しようとしてベストプラクティスを見落としてしまうことがあり、例に漏れずマンション管理サービスでもアンチパターンの実装が見受けられたので実装を進める中で意識的に技術の調査を行う時間やリファクタの時間を設けたいと思いました。
また、最近はフロントdiv自体の技術スタックをVue.jsからReactに移そうという動きが見られそれに伴って「アーキテクチャを統一しよう」とのことで近々アーキテクチャのプレゼン大会が行われるそうなので、是非今作っているアプリを公開し合わせて自分のアーキテクチャが採用されたらなと思っています。
■最後に
来月の8月末で一番お世話になった先輩社員が退職されるということでフロントdivで2番目の古株となってしまいました。(と言っても最古参との差は2ヶ月だけなのですが…)
この業界の入れ替わりは早いことは理解していたのですが、1年でだいぶ顔ぶれが変わったなあと思います。
寂しくはなりますが、今はとにかくメインで任せていただいている案件に集中したいです。
今後も継続してこの月次報告をしていこうと思っています。是非今後ともよろしくお願いいたします。駆け足になりましたが最後までご覧いただきありがとうございました。