見出し画像

新卒1年目で案件リーダーをがんばった話

はじめに

こんにちは、すぎもんです。ナビタイムジャパンで『トラックカーナビ』アプリのサーバー開発を担当しております。

今回は、新卒1年目で案件リーダーを担当して学んだことを共有したいと思います。これから、大きな業務を任されるであろう新卒1年目の方やナビタイムの業務について興味のある方に読んでいただければと思います。


やったこと

トラックカーナビ開発チームでは、機能追加や機能拡張といった案件ごとに「案件リーダー」を立てて、その人を中心に業務を進めていきます。案件リーダーの役割は、実装以外の開発に必要なことの取りまとめがあります。私が案件リーダーを担当した「トラックログのリアルタイム反映」では、大まかに以下の業務を行いました。
・リリースまでのスケジューリング
・どんな機能にするか仕様検討
・開発に必要な社内調整
・(サーバー開発者としてサーバー開発)
・全体の進捗確認と調整
・当社のコーポレートサイトに載せる「お知らせ」内容の調整


気づきと学び

■開発以外の方がやることが多い
案件リーダーを任されるまでは、タスクを割り振ってもらい開発をしていました。開発メンバーとして案件に関わっていたので、任された開発業務以外に認識が及んでいませんでした。開発以外に何があるか、具体的にはわかっていない状態です。案件リーダーとなったことで、初めて経験する業務との闘いが始まりました。

先輩の助言を頼りにしながら、自分の言葉でやることを細分化していき、迷ったら先輩に軌道修正してもらいながら、前に進むということを繰り返しました。そしてリリースに辿り着いた時に、ようやく案件の全容が見えてきたという状況でした。仕様検討に関しては3ヵ月かかったのですが、3ヵ月目に入ってようやく初めの頃の先輩の助言が理解できるぐらい、成長には時間がかかりました(個人差があると思います)。

案件リーダーを通して、開発は機能提供までの業務の一部であるという認識を持つようになりました。そして、仕様検討や検証など一連の流れの中で、今自分はどこにいるのかということを意識して仕事をするようになりました。


■細分化によって次のやることが明確になる
案件リーダーを経験してリリースまでの一連の流れを把握したことで、何をしているフェーズなのか、次にどんなことをしそうかという想像が及ぶようになり、以前よりも動きやすくなった実感があります。これは、案件リーダーの経験を軸に、案件を俯瞰的に見て、やることを細分化できるようになったからだと思います。

私は入社して間もない頃の開発業務として既存コードの修正から始めましたが、その時もまずコードの影響範囲を把握して、どこを修正すれば良いか見当をつけてから、コーディングしていました。この見当をつけるという作業が、細分化であり、自分自身が仕事を進める上で進めやすくなる要因のひとつだと思います。

新人のうちは、うまく仕事を進めようと焦りすぎず、色々な業務を通して知識を増やして、細分化できるようになる状態を目指すという視点は大事だと感じています。


■仕様検討では課題、ニーズの深堀りが第一
今回の案件を通して最も苦労したフェーズとして、仕様検討があります。目的を見失ってしまい、なかなか仕様がまとまらなかったため苦労しました。今振り返ると私が躓いたのは、「課題・ニーズの深掘りができていない」という点でした。

課題の洗い出しをして、どうしたら解決できそうかという解決手段ばかりを考えていました。課題・要望を深堀りして定義できていないために、解決策に説得力がないということが、先輩との問答を繰り返す中でわかってきました。

今回、私が案件リーダーとして関わった「トラックログのリアルタイム反映」では、リアルタイム反映することは決定事項だったため「どのようにリアルタイム反映をするか?」というところから検討が始まりました。

私は初めは即時反映にすることで「当日の運行記録が確認できることで、日々の面倒な日報作成業務で参照して時短になる」という思考で止まっていました。しかし、先輩に「日報ではどんな情報が必要なのか?」「既存のトラックログで提供している情報は何か?」「既存のトラックログの情報で十分か?」ということを問われたときに、ひとりでは考えきれていない範囲に思考を伸ばすことができました。問いを繰り返すことで、課題・要望を深掘ることができて、より機能の魅力や開発意義を見出すことができました。

課題解決のためには、ユーザーの潜在ニーズを把握することが重要だということがわかりました。潜在ニーズを把握するためには、自ら問いを立てるということが重要だと感じました。次回案件以降は、問いを立て、課題・ニーズの深掘りを十分に行った上で、仕様検討を進めていこうと思います。



■全体の進捗がスケジュール通りか確認する仕組みが大事
開発に入ると担当分の開発だけに集中してしまいがちですが、案件リーダーとして他メンバーの開発の進捗状況を確認する必要があります。開発後の検証スケジュールに影響するためです。

私の場合は、担当分の開発に集中してしまい、iOSの開発遅れに気付けないということがありました。案件リーダーが進捗状況を把握していないと、スケジュールの遅延や、リリース日にリリースできないこともあるため、自分以外の進捗も、スケジュール通りに進行されているか、確認する仕組みが大事になります。

あらかじめ週1、2回ほど進捗共有するミーティングを設定しておくと、進捗確認の習慣になるのでおすすめです。また、この案件以降、Confluenceでタスクブレイクするなどして、やることをより明確にするようにしました。自分でタスクを分割して、内容、担当者、見積工数とバッファ、Jiraチケットを一覧できるようにしています。一覧できることで、スケジュールが明確になり、かつ自分の仕事の共有や調整がしやすくなるのでおすすめです。


まとめ

新卒1年目で案件リーダーを担当したことで、開発以外の業務を経験し、成長することができました。何も知らない状態から、徐々に自分が認識できる範囲を広げていくフェーズは、とても大変でした。これから徐々に仕事を任されるようになる新卒1年目の方の前に立ちはだかる壁だと思います。

ただ、成長過程なので「”今”できないこと」に悩んで思考と行動を止めないマインドも大切だと実感しました。ゆっくりでもいいので前に進むことが大切です。私は「大変」と落ち込んだ時は「大きく変われる」チャンスと変換して、前向きに取り組むようにしています。

私の経験が一つでも学びや気づきになっていたら幸いです。
最後までお付き合いいただきありがとうございました!