SMARTCAMP Engineer Blog

スマートキャンプ株式会社(SMARTCAMP Co., Ltd.)のエンジニアブログです。業務で取り入れた新しい技術や試行錯誤を知見として共有していきます。

新卒1年目がプロダクトの開発効率向上をリードした話

こんにちは、 BOXIL 開発に携わっている、新卒エンジニアの高砂と申します!

皆さんは開発に携わっているプロダクトで、開発効率の向上に取り組めていますか?

本記事では、弊社で定期的に開催している「改善Day」について紹介します!

改善Dayとは

改善Dayとは「開発効率向上」を目的とし、1日かけてリファクタリングや開発環境の改善等に取り組む日の事です!

弊社では「Small Company, Big Business.」、すなわち「少数精鋭」を企業理念として掲げており、開発チームとしても一人あたりの生産性を高める為に開発効率の向上は重要視しています。

そんな改善Dayは、参加するメンバーが愛着を持ちやすくなるように、社内ではBOXILのロゴ(下記画像)のモチーフであるキャンプファイヤーになぞらえて「薪入れ」と呼んでいます。

f:id:jonpili:20210310134215p:plain

改善Dayが始まった経緯

元々BOXIL開発チームでは、プロジェクトの合間に1週間使って改善に取り組む文化がありました。

ただそれは下記のように難点がいくつかありました。

  • いつ開催されるのかが決まっていない
  • 開催の度に企画チームとの調整が必要
  • 1週間丸々開発が進まないと困る事が多い

その為、「もっと良い改善フローがあるのではないか」と考え、去年の夏頃に手を上げてその企画を任せてもらったのが始まりでした(下記画像は初回開催時のドキュメント)。

f:id:jonpili:20210310134256p:plain

改善Dayの実際の進め方

改善Dayは当日の開催に加え、その前日までに取り組むタスクの相談ミーティングを行います。

相談ミーティング(通称:薪割り)

30分〜1時間程度で、改善Dayで誰がどのタスクに取り組むかを相談するミーティングです。

このミーティングまでに改善Dayで取り組みたい内容を各自考えておいてもらった上で、その中からどのタスクに当日取り組むかを投票で決定します。

また、1日でやりきれるようにタスクのスコープを設定します。

f:id:jonpili:20210311160749p:plain

改善Day(通称:薪入れ)

当日の定時1時間前までで、前日までに決めた取り組むタスクを進めていきます。

その時間内でのレビューやリリースを目標としているので、2回の進捗共有会を行い状況確認と不明点の相談を行います。

もし定時1時間前までにレビューやリリースが完了しなかった場合は、そこから定時までの1時間の間に行うというルールにしています。

f:id:jonpili:20210311160819p:plain

改善Dayで得られた効果

やはり一番の効果は数多くの改善結果です。

去年11月からの取り組みだけでもたくさんの改善をしている事が見て分かるかと思います。

f:id:jonpili:20210311160841p:plain

加えて普段の開発でも改善の意識が高まり、「ここの機能開発のついでにリファクタリングをしよう」という取り組みが多く見られるようになりました。

改善Dayでの失敗

上手くいかない事が一番多かったのは「開催日のうちにレビューやリリースを完了させる事」でした。

改善系タスクはスコープを設定しているとは言え、「ここはもう少し良くしたい」とこだわりたくなる事が多く、それ故に相互レビューやリリースに時間を割く事の優先度が下がってしまいがちです。

そこで弊社では最初は19時終了だったのを1時間早めてレビュー・リリース対応の時間を確保したり、実験的に連続2日間に増やして余裕を持ってタスクを終わらせられるようにしたりと試行錯誤中です。

まとめ

このように、弊社では普段取り組みづらい「開発効率向上」に対し、定期的に時間を確保する事で取り組んできました。

プロダクトの年数やチームの人数が増えれば増えるほど開発効率は落ちてしまいがちですが、そのような時は定期的に「改善Day」を開催してみてはいかがでしょうか?

本記事が、開発効率向上に取り組まれる方の参考になれば幸いです!