2025年の振り返り
2025年の振り返り
はじめに
2025年の振り返りを軽くやっていこうと思います。 その前に、初投稿なので、軽く自己紹介をしようと思います。
99年生まれのWebエンジニアです。今は、都内のリテールテックSaaSの自社開発企業で働く26歳です。 普段は主にバックエンドを担当しています。たまにフロントも触ります。 TypeScript とPythonがメインです。 趣味は海外の音楽とボディビル競技です。
それでは振り返っていきましょう。
1月
1月からはサービスのPW(パスワード)強化対応を行いました。 既存のPWの設定条件をより強化するタスク内容です。 また他にも設定の権限周りや設定方法の追加対応等も諸々行いました。 2024年11月に今の会社にjoin&Webエンジニアデビューしたわけですが、 このPJで初めてフロントエンドからAPIを1機能単位で担当しました。 それまでは基本機能に小さい追加機能を少しする程度でした。
2月
PW強化のテスト期間でした。 単体テストをメインで周りのサポートを受けながらなんとかほぼ1人で1人前のタスクを完遂できました。途中1週間ほどの遅れがありましたが、一心不乱で「何がなんでも絶対完成させてやる」というモチベーションでなんとか納期に間に合わせることができました。 今年TOP3に入る成長したポイントだと思います。
3月
1-2 月のPWが終わり、インシデント対応を担当していました。 今までは新規開発のみだったのですが、初めてインシデント対応を行いました。 事象の再現や、営業チームからの前提条件が正しいのかの確認、ログ調査などを通して、調査力を向上できた1ヶ月でした。
4月
小規模な新規追加機能開発を行いました。 初めてC#のアプリを触ったのですが、Visibleプロパティなど初めて知る概念が多く、非常に学びのある1ヶ月でした。 アプリの構成やシステムの流れを時間をかけて理解することで、少しずつ全体像を掴めるようになりました。
5月
インシデント対応と機能開発を並行して行いました。 機能開発においてはある程度の工数計画を立てられたのですが、インシデント対応は調査してみないと不明な点も多く、適宜PMに進捗を相談したり、時間を決めて、自分の中でスケジュールを立てて進捗報告をするなど、マルチタスクへの工夫を強いられた時期でした。 しかしこの経験が今のスケジュール自己管理につながっていると思います。
6月
データ連携の調査を行っていました。 提携している企業の受け口である形にデータを整形してインサートするため、データが何件入るのかを検証していました。 限られた時間の中で、検証する価値のある件数を見定めて行う必要があり、 GPTにデータの整形ツールを作成させたけど、うまく整形できずに結局手動で行っていました。 この月が2025年の業務の中で最もしんどい月でした。単純作業の連続だったからです。 しかし、より効率的に業務を進めるために正常に動くツールを作成したり、他にも工夫の仕方はあったと思います。 苦労と同時にエンジニアとしての未熟さを痛感した1ヶ月でした。
7月
新決済のAPIの刷新PJのAPI設計を行いました。 初めて、新しいAPIの基本、詳細設計を行いました。(主に詳細設計) ・こういったレスポンスが来た際はどういったコードを返すべきか ・ここは本当にポーリング処理で良いのか など、初めての経験ということもあり、GPTと壁打ちしたり、先輩や知見のある同期に相談したりして設計しました。 また、外部連携を伴うため、他者からの資料も確認したりして、新決済端末の仕様、既存のシステムの仕様を確認しての設計に苦労しました。 しかし、設計の楽しさを感じた1ヶ月でもありました。
8月
7月に設計したAPIを実装していきました。 最初は先に先輩が実装していた部分を参考に実装していきました。 と同時にこの辺でGitHub Copilotをふんだんに使用していき、vibecordingの第1弾開始といった具合で、cordingさせた後は、なぜこのような実装にしたのかをAIと対話したり、先輩からのレビューで質問されたことにうまく回答できなかったり、vibecordingとの付き合い方や新しい視点でのコーディングの知見が身につきました。 また、TypeScriptを主に触っていたので、 プロを目指す人のためのTypeScript入門 安全なコードの書き方から高度な型の使い方まで をざっと読んだりしてTypeScript のインデックスを学びました。
9月
8月に引き続き、APIの実装をしつつ、単体テストを書いていきました。 本格的に1から単体テストを作成から実行まで行うのは初めてでした。 モックの概念、使用方法、このテストはテストする価値があるのか、このテストをすることで保守性、プロダクションコードを修正した際に壊れてしまうのではないかなど初めて学ぶことが多かったです。 そこでこの本を読んで少しずつ、単体テストで行うべきテストの見極めが分かってきました。 単体テストの考え方/使い方
また8月に行った実装を通して、決済端末からのレスポンス内容が異なるということが判明し、設計、実装の修正を行いました。 WF形式で実装していたことで、設計時の確認観点での漏れがわかり、設計の難しさ、次回以降の気をつけるべきポイントの発見など、課題と新たな発見ができた1ヶ月でした。
10月
9月の残りの実装とテストの続きを行っていました。 特に、やり直しになったテストは最後までこのprivateメソッドはテストするべきなのか?テストするとしてもここではないよな〜?? なぜ失敗するのかなど、日々格闘していた記憶があります。 ここで改めてテストの観点、価値について深く考えさせられ、先ほどの本や記事、先輩への相談等を通してテストの難しさを感じました。
11月
PJチームを横断し、他のチームのヘルプをおこなうことになりました。 主にPython(Flask)のAPIの改修を行いました。 ここで初めて、既存の不要なコードの削除をしたのですが、開発業務よりもよっぽど難しいことを痛感しました。 VS code上で不要になった関数名や変数名を検索しながら削除していたのですが、その中で使用されている参照先をどんどん参照していき、これは本当に不要なのか?他でも使用されていないとなぜ言い切れる? まだ不要なコードは残っていないかなど、Copilotに事前に調査させたり、サポートはしてもらいましたが、結局の最終責任者は自分です。 ここでさらにvibecordingや調査へのAI活用方法などを学びました。
12月
11月に引き続き、APIの改修を行いました。 今までは単に改修するべき箇所の設計を他のシニアエンジニアがして、それを改修するという内容でした。もちろんその設計がベストなのかも自分の中で思考しながら、進めていました。(プロのエンジニアとして当然だと思うし、 自分の性格的にも納得して物事を進めるタイプだからです。) しかし、既存の設計について疑問があり、設計者も当時の設計背景が不明であり、私が設計しないといけないタスクがありました。 ユーザー視点からユースケースを整理し、PMに根拠と自分の考えた方針のメリットデメリット等を踏まえた設計を提案し、承諾を得て改修を行いました。 設計と同時に、その設計を提案する「提案力」を身につけることができました。
ここまでざっと2025年のタスクを振り返ってきましたが、Webエンジニア初年度としては幅広い工程や経験をすることができたと感じています。 しかしこれは私1人ではなく、周囲のサポートがあってこそのことだと思います。職場、職場外のプライベートでも親しくしてくださった他社のエンジニアの方や仲間の影響も大きく、恵まれた1年でした。 本当にありがとうございました。
ざっとこの1年で身についたこと
- 設計力
- 実装力
- 単体テストの設計、実装
- 調査力(ログ、必要資料からの)
- 提案力
- タスクの優先順位の見定め方
- 上司への適切な相談の仕方
- vibecordingとの付き合い方
- 自身の課題とそれを克服するための計画力
- 指摘をすぐに行動に移す行動力
来年に向けて強化していきたいこと
設計力
事前に必要な情報を限られた時間でまとめて検討する力が不足している → 思考した上で経験を積む
上流工程
要件定義、基本設計に関わっていく →事業の目的を理解しつつ、ユーザー視点、会社にとってどういったメリットデメリットがあるのかを常に考える癖をつける
AIからのコードの精査力
→まずは設計プランを提示させる、メリットデメリットを確認する
インフラも知見を増やす
→個人開発でインフラAWS等、必要なサービスを1つずつ触って概要を理解していく
IaC
Docker
リーダー経験を積む
→現状の1つ上でのポジションの先輩のタスク内容を「自分ならどうするか」という自分視点で想定する
以上、ざっとですが2025年の棚卸しでした。