新卒がウェルスナビの実務で得た学びと成長
はじめに
こんにちは。今年、2025年に新卒で入社したバックエンドエンジニアの高橋です。
本記事では、実務経験のない新卒エンジニアが新規プロダクト開発に携わり、実務を経験することで得られた学びと成長について共有したいと思います。
前提
私は現在、0⇒1の新規プロダクト開発に携わっています。学生時代の私は、実務インターンなどの経験はなく、個人開発でSpringBootやReact.jsの基礎を勉強していました。この経験と新卒入社後の研修を経て、CRUD操作をひと通り含むような基礎的なアプリなら作れるというレベルになり、来年のローンチを控えた新規プロダクト開発業務を任されました。その開発プロジェクトは、まだプロダクトの方向性や内容が煮詰まっていない状態でした。そのため、関係者と丁寧に各種要件を詰めていき、開発業務への道筋をつくることが必要となっていました。
個人開発では存在しなかった実務の壁
チーム開発で求められるプロセス・協調性
まず、個人開発と実務ではその入りから大きく異なりました。
- 個人開発:作りたいものを好きなように作る
- 実務:目的を定め、誰向けに何を実現をするのかを明確にする=要件定義
また、個人開発と違って実務は自分1人の世界で進まず、さまざまな職種の人と協業して進めて行く必要があるところが実務の特徴です。こうした違いを実感しながら、実務ではチーム開発ならではのプロセスや協調性の重要性を学びました。
設計の難しさ
私が以前APIの設計を行った際、レアケースではあるものの特定の操作が行われた場合、ユーザーにとって問題事象が発生しうる点を上司から指摘されました。このようなミスを防ぐために、「ユースケースの洗い出し」「シーケンス図を書く」など実施し、設計の抜け漏れがないようにしました。このあたりは個人開発では行ってこなかったことです。
また、仮に考えた設計に抜け漏れがなかったとしても、設計自体が最適解とは限りません。私が新機能のバッチ設計を担当した際、要件を満たしつつ多様なケースに対応する過程で、ロジックが次第に複雑になってしまいました。そこで上司に相談したところ、別の角度からアプローチすることで、あらゆるパターンを網羅しつつシンプルな設計に改善することができました。私の設計では要件を一つずつ満たしていくことに注力していましたが、全体を俯瞰した時に歪みが生じ、結果として複雑な構造になってしまったのです。個別具体の事象にとらわれすぎず、具体と抽象を行き来することで本質的に必要な設計はなにか、よりシンプルな構造にできないかという視点で発想できることを学びました。
思わぬ失敗
実装で直面した課題
設計段階では問題ないと思っていた実装が、実際にコードを書いてみると以下のような制約に直面しました。
- セッションの管理や非同期通信の理解が浅いために想定と違う挙動をする
- 思わぬビルドエラー
- インフラとの兼ね合いで想定していたデータが返ってこない
これらの問題に対しては、設計に立ち戻って修正するか実装上の工夫で解決するかを判断する必要がありました。大きな影響があれば設計を一部見直し、エラーなどの問題はGithub CopilotなどAIを活用して解決しました。
想定していなかったバグがテストで判明
ある既存機能をより使いやすくするために改修をしたのですが、機能を追加した画面を中心にローカル環境で動作確認を行なった結果、問題なさそうだったので安心していました。ところが社内テスト環境で動作確認したところ、特定のケースで正常に動作しないことが分かりました。原因を調査したところ、元々問題なかった業務フローに影響に問題が出てしまい、必要なデータが登録できていないことがわかりました。
この経験から、修正規模の大きさに関わらず、リリース前には必ず「元々ある機能が正しく動作するかを確認するテスト(リグレッションテスト)」の実施を徹底することの重要性を学びました。部分的な動作確認だけでなく、システム全体を見渡したテストが欠かせないことを痛感しています。
実務経験を通じて得た「ソフトスキル」
タスクの要素分解とスケジューリング
仕事を進める上でまずはなにをやらなければならないかを洗い出す必要があります。タスクを細かく分解することで、複雑で大きなプロジェクトの進め方を理解できるからです。
タスクを洗い出した後はスケジュールを引きます。タスクにかかる時間の見積は難しく感じることもありますが、日頃から各タスクにどれくらいの時間がかかるかを予測し、終わった後に振り返りを行います。すると、徐々に見積の精度が高まり、見積と実績の乖離が少ないスケジュールを立てられるようになります。
成果を出すためのコミュニケーションの取り方
実装で思い通りにいかない時に、自分でじっくり考えて調べながら解決することは大切です。ただし、個人開発と違い、あくまで会社の実務として取り組んでいるため、時間を気にせず考え続けるわけにもいきません。上司と相談しプロジェクトのフェーズやスケジュール感を鑑みて、「いつまでに解決するのか」や「うまくいかなかった場合は誰にどのように頼るか」を考えたうえで、準備や段取りを進めることの大切さを学びました。
新卒1年目で身についた"プロとしての視点"
何を作るかではなく、なぜ作るのか
ウェルスナビで新卒1年目を過ごす中で、"プロとしての視点"が自然と身についたと感じています。仕事をする上で大切なのは「何を作るか」ではなく「なぜ作るのか」を理解することでした。プロダクトは「誰の、どういった課題解決をできるのか、価値を届けられるのか」がテーマにあると思います。個人開発とのギャップを感じる中で、実務においてこれは特に意識すべき点だと感じています。
仕事の楽しさと責任感
学生時代の開発は自分の好きなように作ることができましたが、実際の仕事ではお客様や社会に価値を届けるという“責任”がともないます。それは給料をもらって働く、プロとしての立場だからこそ感じられる重みです。自分の成果が、社会や人の役に立てると実感できることが仕事の楽しさであると感じています。
さいごに
新卒エンジニアとして新規開発に携わり続ける日々は、技術的なスキルだけでなくソフトウェア開発のプロセス全体を学ぶ貴重な経験となっています。一方、プロダクトの理解や解像度が浅いことによって失敗して悔しい思いをすることも少なくありません。しかし、そうした経験を通して多くを学び、エンジニアとして大きく成長できる機会だと実感しています。これからも積極的に挑戦し、成長し続けることでより良いサービスづくりに貢献していきたいと思います。
Discussion