dely engineering blog

レシピ動画サービス「kurashiru」を運営するdelyのテックブログ

プロジェクト管理を自動化してみたけど思うようにはいかなかった話

こんにちは。delyでAndroidエンジニアをしているkenzoです。
今回はAndroidの話ではなく、担当している別のプロジェクトの管理をいい感じにしようと思っていろいろやったけど、そんなにうまくいかなかった。という感じの内容です。

どんな話

「他部署の依頼でコンテンツを作成するプロジェクト」の管理を自動化した結果、うまくいったこと、失敗したことについてのお話です。 f:id:kenzo_aiue:20190507144040p:plain:w250

なんで自動化したの

今回のお話の背景

弊社では開発部が他の部署から依頼を受けてLP等のWebページを作成しています。
私は他の部署と開発部内の実装者とのやりとりの間に入って管理する取りまとめのようなことをしてきました。
やっていたことをざっくり言うと、依頼を受け、実装者に依頼して、配信の準備をする。という簡単なお仕事で、元々はスプレッドシートで管理をしていました。

発生した問題

新たに高い頻度でコンテンツを作る施策の開始や、開発部側で業務委託の方に実装をお任せするようになる等、次第にやりとりや確認・管理しなければいけないことが増えていきました。
そのため、業務の中でこれらのために使うリソースが増えてきたり、抜け漏れが発生しそうな気配を感じるようになったりと、既存のスプレッドシートを手作業で確認・更新するのにも限界を感じてきました。

どんな自動化したの

GASを使って下記の処理が定期的に実行されるようにしました。

  1. コンテンツの内容等が管理されているスプレッドシートから実装に関するものを抽出
  2. githubのプロジェクトに1をtodoとしてissueを追加
  3. 関係者に共有しているカレンダーに1を追加
  4. 開発側や業務委託の方と共有しているスプレッドシートに1を追加
  5. 素材・成果物が揃ったり、配信が迫ったタイミングでslackに通知
  6. 1の変更に合わせて2, 3, 4の内容を更新
  7. その他もろもろ、、、

これらの組み合わせで、今回のプロジェクトにおける業務フローのある程度の部分を自動化することができました。
f:id:kenzo_aiue:20190507174721p:plain:w250

うまくいったこと

作業削減

issueやカレンダーへの追加や更新を手動で行うという、そこそこ手間のかかる作業(定期的にスプレッドシートを確認して内容を様々な場所に追加・更新)をなくすことができました。

抜け漏れ防止

依頼が発生したり、配信日が近くなったら関係者のslackチャンネルにbotで通知を送りました。
抜け漏れを防ぐことができそうで、日々の心配事が減りました。

うまくいきそうだったこと

やりとり減らせそう

必要なタイミングで必要な人に通知を送ることで、やりとりが減らせそうな気がしていました。

うまくいかなかったこと

想定以上の戻り作業の発生

今回行った業務フローの自動化ではそれぞれの工程が完遂されているかのチェックが抜けていたため、次の工程に進んでからの戻りが度々発生しました。
その結果、その都度手動でのやりとりを行うことになってしまいました。

業務委託先の方との信頼を築けなかった?

あまりやりとりをしていないまま、業務委託先の方とのやりとりもbotでの運用に変更してしまったために信頼を築けなかったかもしれません。
そのためか、締切が近くなっても連絡がつかず、紹介してくれた別の社員に連絡をお願いすることになってしまい、コンテンツが配信ぎりぎりの完成となってしまったこともありました。

こうしたらよかったのかも

「想定以上の戻り作業の発生」に対して

戻りを完璧に防ぐのは不可能だし、いろいろな手立てを講じる工数もあまりありませんでしたが、頻繁に発生していたシンプルなミス(素材の不足や工程忘れ)についてくらいはチェックする仕組みを入れておく必要があったように思います。
また、手順をもっと明確にして初めに伝えておくことや、困った時に参照できるものを作っておくとかでも防げた可能性はあります。
他の業務でも同じことが言えそうですが、必要な内容を伝える・参照しやすくしておくことは大事ですね。

「業務委託先の方との信頼を築けなかった?」に対して

もう少しやりとりをしたり、直接会う等して信頼関係が築けてからslack botの運用を始めるべきだったと感じました。
または、slack botでの通知はあくまで自分へのリマインドにとどめ、やりとりは自分で行う。といった方法を検討してもよかったのかもしれません。
信頼関係のないままslack botだけで完結させようとしてしまったため、なにかあった場合に気軽に言ってもらえるような心理的安全性を高められなかったのではと思います。
このような信頼関係は人と関わる業務全てにおいて大切なことだと思いますが、今回は効率を求めて自動化を進める上でおろそかにしてしまったのが反省点です。 f:id:kenzo_aiue:20190507173532p:plain:w300

まとめ

自動化によって便利になることはいっぱいあるので、これからもどんどんやっていこうと思います。
ただ、自動化するのが難しい部分も多々あると思います。もちろんそこは手作業等で補う必要があるのですが、ともすると、省いたかたちで自動化してしまうこともあるかもしれません。
そうすると、せっかく自動化したのに後々工数を取られたり、ミスに気付かないまま進んでしまうということも考えられます。
特に、今回私がミスった信頼関係における部分、人間的なコミュニケーションを省いてしまうと、理論的にはうまくいきそうに思えても、どこかで綻びが生まれて問題が起きることがありそうです。
業務を効率化する時でも、あえて人の手を介した方がうまくいくこともあると思うので、その辺りを頭に入れつつ今回の反省を活かし、これからも自動化を進めていきたいと思います。