いてづきブログ

情シスでやってみたことの備忘録

炎上プロジェクトに放り込まれて1ヶ月でやったこと

6月の頭、これまで携わっていた仕事が唐突になくなってしまいメンバーがそのまま別のプロジェクトに放り込まれることになった。

 

1ヶ月経ってようやくプロジェクトがなんとか進み始めた(ように見える)のでやったことを書いておく。無事に着地できるといいな…。

意識合わせ

まず自分たちが入った時点でプロジェクトの仕様を把握できている人が誰もいなかった(恐ろしいことに…)

既存メンバー同士でも理解がズレていることが散見されたので、1週間かけて全員が仕様をきちんと理解+意識合わせするということを行った。

 

実行環境づくり

認識があっていなかった中にはインフラ環境も含まれていて、それもあって開発者が実行できる環境がなかったのでまずはこれを作ってもらうことにした。
これを決めるとき、ヘルプで投入されたCTOからかなり的確なアドバイスをもらえてCTOすごいって思った(小並感)。やっぱ経験が物を言う部分ってあるよね。

 

チーム分け

自分たちがやるべき部分を明確にするためにアプリ、インフラ、サーバチームに分けた。早さを優先するためでもある。
これまでは全員がそれぞれの部分に対してレビューとかしていたけど、その負担で本来やらなければならない部分が遅くなるということが起こってしまっていたので。

 

意識付け

最初の目標は「実行環境作って1機能がちゃんと作れることを確認するということ」とした。
いざスタートしてみるも、いきなりうまくいくはずもなく。

チーム分けたにもかかわらず別チームのプルリクレビューにバンバン入ってきてたりしたので、それは明示的に「こっちにはかかわらず本来のチームの仕事に集中してほしい」と伝え、それぞれがやることとやらないことを明確にした。

本人は良かれと思ってやってくれていることだけど、結局そこが遅れると全体として遅れる結果になってしまうので…。

 

コミュニケーションの場作り

チームを分けたことでチーム間での意思疎通ができていない(お互いに向こうから聞いてくるだろうと思っている)ことも発覚する。

 

リーダー間の話し合いでコミュニケーションを取る必要があるだろうということになって週3で全員での進捗確認の場を設けることにした。
表向きは進捗確認だけど、真の目的は顔つき合わせて進捗を話させることでコミュニケーションを強制的に発生させることである。スクラムでいう朝会みたいな。

これまでの様子を見ていると、決めごとは誰かが決めてくれていたっていう人が多く*1こうやって強制的にでも話す機会を作らないといつまで経っても話が進まないという感じだったので。

このタイミングで別チームに確認したいことを出させたり、各自が思い込みで進めて認識がズレていた部分を合わせられるようになった。

 

朝会(14時)

上記の進捗確認とは別に、自分のチームは毎日朝会をすることにした。
ただしみんなちょくちょく寝坊するので14時から。「朝」とは。

 

先述の意識付けの一環として、まず昨日やったことに対してどうしてそれをやったのかを確認することにした。
最初の1週間、見ていると作業をするためにタスクを切るという本末転倒なことをしていたので、作業はタスクを完了するためにするものということを意識してもらうようにした。

これは前のスクラムマスターに教えてもらったことだけど、改善すべきことはそれぞれの人が無意識にやっていることにあるのでそこを明らかにしなければならない。
問題を改善するにはまず問題を認識するところから。そして無意識にやっているということは再現性も高い。だからその無意識にやっている理由を明確にすることが必要になる。

メンバーがこれを意識できるようになったかはわからないけど、勝手に作業をせずやる前に確認したり聞きに来てくれるようになった。

 

次に不要不急のリファクタリングを禁止にした。
単純に時間がないのと、リファクタ案が出ても上記の通りいつまで経っても決められず*2放置されるプルリクが散見されたので。

 

プルリクもこの時間で一通り見ることにした。
これはどっちかというとまだ技術部分をキャッチアップできてない自分のためにという側面もある。
全員の前で説明してもらって、動かしてみて、問題なさそうと全員が納得したならマージしていくというスタイル。

正解がわからないところで悩んで時間を使うよりは試してみてうまくいかなかったときに対応したほうが良さそうという判断。

 

今後の課題

自分の課題として上記の通りまだ技術部分のキャッチアップができてないこと。
既存メンバーは進捗は出てなかったとはいえ技術検証や学習はきっちりやってたみたいで、決めたタスクに対する作業はとても早い。
自分がチームリーダー的ポジションとして開発以外の雑用(割と差込み仕事多い)を引き受けてる間に朝会で自分がやるって言ってた分まで片付けてくれてる。

 

自分の知識がつかないことやこの先のことに対して結構恐怖があるけど、ひとまず今は炎上プロジェクトに対して自分ができることで貢献できればいいか…と思って自分を納得させている状態。

 

無事に着地できるといいな…(2回目)

 

SCRUM BOOT CAMP THE BOOK

SCRUM BOOT CAMP THE BOOK

 

*1:割と経験浅めなメンバーで構成されていたため

*2:今回使ってるReactNativeの経験者がプロジェクト内にいないので誰も作法の正解を知らない