広告効果を予測するシステムの新規開発

【チーム】PjM2名、エンジニア2名

【役割】リードエンジニア

【技術】React, NestJS, TypeScript, AWS (ALB, ECS, RDS, AWS Pipelineなど), AWS CDK

【概要】

効果予測のロジック自体は別会社が担当しておりましたが、それ以外の部分は全て、弊社で担当しました。具体的には、Webフロントエンドの新規開発、認証システムとの連携、バックエンドのデプロイを含めたインフラ基盤の構築を行いました。フェーズを区切った成果納品型の契約でしたので、システムの実装はもちろんのこと、進捗管理や顧客との調整事項には特に注意しました。また、もう一名のエンジニアはジュニアレベルの方でしたので、教育の観点から、技術選定から新しい技術スタックの獲得まで、成長の場づくりも心がけて開発を進めました。

【取り組み】

【Pick Up】成長できる環境づくりと自らのキャッチアップ

0 → 1の開発で、技術的な意思決定が多くありました。他社協業部分があり、100%自由に選定するわけではありませんでしたが、一部の制約と他との親和性を考慮しながらの選定を進めました。この過程で特に意識したことの一つが、成長機会の提供でした。ジュニアレベルだったエンジニアの成長のため、技術的な意思決定〜実装まで、立ち上げ期こその経験を積ませることを方針としました。

◎施策:悩み段階から私自身の思考を伝え、調査や考えるタスクを振っていく

コードレビューのように、整理された決定事項だけを提示されても、深くは残らないと考えました。悩み過程から伝えていくことで、本人が自ら考えていけるきっかけづくりに努めました。SlackのCanvasを利用していつでも思考を見れるようにし、懸念事項やトレードオフの観点を強調しました。そして、それらを飲み込んだ上でなぜこれを選ぶのか、という点を伝えるようにしました。

また、納期を守ることと障害を起こしにくいシステムが要求されていましたので、コアとなる土台部分は、私自身で調査・判断を進めました。ただ、上述の方針がありましたので、土台以外の部分(ライブラリの選定など)の調査や1次判断を任せるようにし、技術選定をする機会を与えるようにしました。

これらの取り組みを進めた結果、Whyの観点も含めたシステム理解を各々が持つことができ、保守チームへの引き続きや追加要望への対応を、ほぼお任せすることができました。