今回は炎上しかけた案件を経験したので、どんな状況だったのか、どう対応したのかを共有します!
Table of Contents
案件概要
生成AI系の案件で、外部APIを叩いてサービスに組み込むPoC開発案件でした。
炎上になりかけた原因
短納期の案件で、自分がうまく捌けなかったのが原因です。具体的にはこんな感じ
- 仕様が決まるのが遅れた
- 必須機能を絞りきれなかった
- 工数の見積もりが甘かった
- バッファを考慮していなかった
- 仕様が決まるのが遅れたが、それまでにできることを進められなかった
PoCだからもっと必要最低限の機能に絞るべきだったよな…
打ち手
考えたこと
- QCDのうちQ(品質)を落とす
- メンバーの追加
- 日報の提出
- 常にオンラインで作業
- ドキュメントを最低限にまとめ、更新に注力
- レビューは同期で行う
- コードレビューの品質を落とし、要件通りかを重視
- 2週間限定のWBSを作成
- シニアPMへの相談
実行したこと
考えたことは全部実行しました。以下に各打ち手の背景と手応えをまとめます。
QCDのうちQを落とす
コストは決まっていて、納期も動かせない状況。でも、事前にクライアントとは「バグは仕方ない」と話していたのでOKもらいました。
また、クライアントと一緒にテストを進めてバグの優先度をつけて対応することに合意いただけました。これで一旦品質問題はなんとかOK。
メンバーの追加
アドバイザーとして入ってもらっていたシニアエンジニアにサポートをお願いしました。事前に相談していたので、快く引き受けてくれ、進捗の改善ができました。事前に相談しておくことが重要だと実感しましたね。
日報の提出
副業メンバーの日々の進捗が見えにくいという課題がありました。メンバーからの自発的な報告が少なかったので、全メンバーに日報を提出してもらうことにしました。これで、プロジェクトがギリギリの状況だと伝えることができました。
常にオンラインで作業
要件定義や基本設計のドキュメントが少なく、実装メンバーに仕様が伝わらないという課題がありました。ドキュメントよりも実装を優先していたためです。仕様を一番理解しているのが自分だったので、空き時間には常にオンラインで待機し、実装メンバーの質問にリアルタイムで対応しました。
チャットでのコミュニケーションロスがこれで減りました。
ドキュメントを最低限にまとめる
API仕様書が更新されていない、仕様が不明確という課題が多かったため、OpenAPIとFigmaだけは最新を保つようにしました。Figmaにはクリックした際のAPI呼び出しや、OpenAPIのURLを記載し、仕様変更に対応しました。
他の現場でもここの更新がちゃんとできてねえみたいなのは多発していたのでよかったんじゃねえかと思っています。
レビューは同期
レビューのタイムロスを減らすため、同期でレビューを行い、その場で修正してもらうようにしました。
コードレビューの品質を落として要件通りかを重視
序盤は細かくレビューしていましたが、間に合わないと判断し、まずは動かすことを目標に品質を落としました。後で直す必要がある課題はチケット化して対応しました。
2週間限定のWBSを作成
タスクを整理し、各エンジニアにタスクの重さを再度確認し、人軸のWBSを作成しました。これで、メンバー間で自分のタスクの重要性を再認識してもらって動くことができました。
シニアPMへの相談
毎日シニアPMに相談し、課題の解決策を提案してもらいました。
結果
結果として、なんとか納期までに納めることができました。自分のミスで炎上しかけましたが、なんとか収めることができました。
これからどうしていこうか
2ndリリース以降もあるため、以下の点を改善していきます:
- 暇な時ほど未来に貯金する
- デザインをちゃんと準備する
- タスクとスケジュールの整理
余裕がある時にはマジでできること全部やれって感じですわね。
まとめ
この案件では多くの学びがありました。今後の案件でも今回の経験を活かしていきたいですね。