Tabelog Tech Blog

食べログの開発者による技術ブログです

未経験の新卒が食べログのプロダクト開発の最前線で学んだこと

この記事は 食べログアドベントカレンダー2022 の13日目の記事です🎅🎄

はじめに

はじめまして。新卒1年目の向島です。

私は現在、食べログのWEBエンジニアとして、要件定義からリリースまで一貫してプロダクト開発に携わっています。 配属直後から、小さい案件からではありますが開発を任せてもらい、既にいくつかのリリースを経験しました。

そんな私ですが、開発経験がほとんどない状態でカカクコムに入社しました。
入社して開発経験を積む中で、技術だけでなく開発に対する姿勢や考え方について多くの学びがありました。 今回は、その学びについて紹介します。

自分から要件に対して疑問を持つ大切さ

開発がスムーズに進まない

チームに配属されて間もない頃の私は「要件定義は企画職の人が考えてくれるもの」という考えが強く、自分から要件に対して疑問を持つことがありませんでした。
その結果、以下のような問題が何度か起こりました。

  • 実装中に要件の不備が見つかる
  • 実装が完了してから、ユーザーにとって使いづらい仕様になっていることに気付く
  • 追加実装が必要になる

後から振り返ると、自分自身の考えが「決まっている要件を実現すること」に偏っていたと感じました。

開発の手戻りをなくすために

このような経験から、開発者として「その要件がユーザーにとって使いやすい仕様なのか、システムとして実現する上で問題がないのか」を自分の頭で考える必要があることを実感しました。

食べログでは各職種が一体となって要件をまとめていることが多く、エンジニアだからこそ気付くことができる要件の不備や改善点もあります。
自分も含めチームのメンバー全員が要件について考え疑問があればコミュニケーションをとって解消することで、あとから手戻りが発生する可能性を減らすことができます。

一新入社員ではありますが、開発に携わる一人のエンジニアとして言われたことをやるのではなく、実現しようとしてることについて考え周りとコミュニケーションを取ることが、チームとして要件をブラッシュアップし開発をスムーズに進めることに繋がると感じています。

成果を出すために周りの人をうまく巻き込む

自分の力だけで開発を進めることへの悩み

新卒1年目の私にとって、開発を自分の力だけで進めることは非常に難しいと感じていました。 特に改修規模の大きい施策では「自分一人でやり切れるのだろうか」という不安が常にありました。

わからないことが中々解決しない中で、要件の変更や追加の発生などもあり、頭が真っ白になってしまっていました。
当初立てた計画からずれてはいけないと考えていて、必要以上に焦っていた記憶があります。

疑問に感じる部分に関しては、自分でどこまで調べて、どのタイミングで質問するか、という点が非常に悩みどころでした。 自分の力で解決できるのではないかと考え、調査を進めてみたものの、無駄に時間だけが過ぎてしまった、というようなこともたくさんありました。

遠慮せず周りを頼ってみた経験

そんな中で、これ以上自分一人で考えても解決できないと感じたときに、私は人に相談するという手段を選びました。 この行動を取ったのは私の中でなんとしてでもリリースを間に合わせたいという気持ちを強く持っていたからです。
もちろん自分のために時間を使っていただくことに対して申し訳ないという気持ちもありましたが、このままではリリースに間に合わないと感じたとき、とにかく人に相談しようと考えていました。

実際に、一度人に相談してみることで、自分一人で考えていたときにはまとまっていなかった頭の中が一気に整理されるようになりました。
また、開発の難易度が高い部分については一緒に方針を考えてもらえるようになるなど、自分の持っている疑問が解決するスピードが上がったと感じています。

このとき、もっと早く人に相談していればより計画的に開発を進められたと感じました。

周りの人を巻き込むことの重要性

この経験から、とりあえず人に相談する1歩を踏み出してみることが、開発を前に進めるきっかけになるということを学びました。
人に相談して早めに疑問を解決することで、チームにとって効率の良い開発ができると気付いてから、徐々に自分一人で悩む時間の方がもったいなく、人に相談することが問題解決への近道であると考えるようになりました。
自分一人で進めようと考えず必要なタイミングで相談すべき人を判断し、周りの人を巻き込んで進めていくことが開発のQCDを上げることに繋がると感じます。

また、最初から完璧な計画を立てなければいけないと考えるのではなく、想定外のことが起きた時にも積極的にコミュニケーションをとり、その後の対応を少しでもスムーズに進めることが大切であると実感しました。
このような周りとの連携の大切さを学ぶことができたのも、開発を要件定義からリリースまで一貫して担当させていただいているからこそだと感じています。

日々の学びを次に繋げていくために

ここまでに記載したものだけでなく、開発経験を重ねるごとに日々反省や新しい学びが生まれています。
これらの学びを無駄にせず、次の案件に生かしていくために私が大切にしているのが、振り返りです。

関係者全員での振り返り

研修中にも自分の中で振り返りは日々行っていましたが、配属されてチームで働くようになってから、振り返りが自分一人では完結しないことも増えてきました。
自分が改善すれば解決するような課題もあれば、役割分担がはっきりしておらずうまく進んでいかなかった場面や、お互いに確認不足だったことなど、関係者の中で共有するべき課題も多く生まれました。

それらの課題が生まれたときに、自分だけで完結させるのではなく、関係者全員での振り返りをすることがあります。
お互いに感じたことを伝え合うことで、自分自身の反省と次にどのように行動するべきかの学びを得ることができていると感じます。
私自身、開発経験も周りの方々に比べて圧倒的に少ないため、一緒に開発を進めた人たちからの意見はとても貴重で大切にしたいと考えています。

最後に

食べログに新卒未経験で入社して、私自身不安がたくさんありましたが、周りの人に助けてもらいながら案件開発を進めることができており、日々新たな学びの連続です。
そんな中でも1年目にして、様々な案件を経験させていただいており、入社時からの成長を自分でも実感しています。

今後も日々の学びを自分のものにしながら、ユーザーにとってより良いサービス作りに貢献できるよう、頑張っていきたいです。

明日は @isobe_tomoko の「食べログオーダー開発チームでQAチームを立ち上げた話」です。お楽しみに!