開発チーム体制の模索とFindyTeam+の導⼊
こんにちは!クライアントサクセスチーム(以下CS)のキシダです!
自分は入社3年目になりますが、開発チームの取りまとめ役を預かっており、開発組織としての成長を目指して日々いろいろな業務に取り組んでおります。
そんなCSチームでは昨年から開発メンバーが続々と増え、自社サービスの拡充がより一層進むようになりました。
喜ばしいことですが、その中で成長痛として出てくるのが「チームビルディング」の悩みです。
今回はCSチームの開発メンバーがチームビルディングに取り組むにあたって、FindyTeam+というツールを導入した背景や今後の取り組みをご紹介します!
はじめに:マインドフリーについて
私たちマインドフリーは、大阪を拠点にWebサービスの企画・開発・運用を行っている会社です。
「世の中にまだ存在しない体験やサービスを創造し続ける」というミッションのもと、様々な業界のクライアントと共にプロダクト開発に取り組んでいます。
自社サービスとしては、LINEを中心としたCRMツール「GEPPY」やその他キャンペーンツール、データ連携基盤などを展開。技術領域としては、TypeScript/React、Vue.js、Go、サーバーレスなどモダンな技術を中心に構成されたWeb開発がメインです。
自社サービス「GEPPY」の開発秘話はこちら👇

FindyTeam+とは?
Findy Team+は、GitHubなどのソースコード管理ツールと連携し、コミットやPRのデータをもとに開発チームの活動状況を可視化してくれるサービスです。
Four Keys(デプロイ頻度、変更のリードタイム、変更失敗率、復旧時間)などの指標を自動で集計し、チームの健全性や改善ポイントを明らかにしてくれます。
チーム体制改善の経緯
背景
CSチームの開発メンバーは現在5名ほどいますが、人数が増え始めたのはつい最近のことです。
一人だけだった時代から二人、三人と徐々に増えてきて、この1年ほどで5名になりました。
開発メンバーが増えると嬉しい反面、コミュニケーションの複雑性も増しました。2~3人だけの超小規模だった時に比べてコード品質を担保できなくなってきたように感じます。
メンバーの習熟度というよりも、開発チームとして以下のようなことが問題点に挙がりました。
開発サイクルが標準化されていない
なんとなく共通認識のようなものはありましたが明文化されたものはなく、新規加入のメンバーが仕事をスムーズに進められるようになるまで相当な苦労をすることが多かったです。
特に要件・方向性・進捗の確認など、阿吽の呼吸に頼っていた部分が多く、アウトプットのズレや良くないタイミングでデプロイしてしまった、みたいな事が目立つようになりました。
レビュー文化が浸透していない
コードレビューは様々な会社で必須とされていますが、弊チームでは先に記載した通りエンジニアメンバーが1-2名の時代が続いていたため、きちんとした仕組みはなくrevieweeの申告制で任意扱いでした。
そんな状況の中でメンバーが急に増えたので、新規加入して1ヶ月ほどで、書いたものがそのままproductionに乗っかるなんてこともありました。
E2Eテストなどで品質を担保していましたが、特定のアクセス負荷などで判明するコード不備も目ポツポツと出てき始めました。
特に新規加入メンバーに対してこまめに方向性のチェックを行うことができず、2週間の手戻りが発生したりなどしていました。
新規開発フェーズから保守・運用フェーズへの移行
プロダクトによってはサービス開始から5年以上経つものもあり、とにかく新機能を追加していくフェーズから、バグ対応やクライアント対応をする運用フェーズに移ってきたこともあります。
ある程度大きくなったコードベースを理解するのには今までよりも時間がかかりますし、もちろん技術的負債だってあります。
また、多くのユーザーが利用しているプロダクトでは、より一層コード品質を保つことが重視されるようになりました。

FindyTeam+導入に至ったポイント
そんな課題感を持った中で開発プロセスのルール化やドキュメント拡充を進めていく中で困ったことがありました。
計測と効果検証です。
今までも開発知識の属人化など組織として良くない点を改善する取り組みは何度もあったのですが、それをしたことで組織としてどのようなベネフィットがあったのか、どれくらい開発が回るようになり、どのくらい障害発生率が下がったのかなどに対して客観的な議論ができずにいました。
PDCAもうまく回せていなかったように思います。
悩んでいたところ、偶然ではありますがFindyの方からFindyTeam+のお話をいただきました。
ツールを入れる予定はありませんでしたが、2週間のトライアル期間もあるということで試してみることに。
トライアル期間を通してツールの使用感を確かめたり、FindyTeam+の担当者様とチーム運営について協議する中で、以下のようなことが後押しとなり導入に至りました。
運用イメージがついた
準拠する開発サイクル・そこから計測できる数値・それらを元にした開発プロセスの改善が弊チームの在り方とうまくマッチして、今後のチーム運営の軸になるイメージがつきました。
FindyTeam+のセールス・カスタマーサクセスが運用イメージの醸成においては特に大きかったです。ツールの導入に留まらず、今後のチームロードマップまで踏まえた議論は大変参考になりました。
ツールの良さ
指標の合理性
Four Keys:うちのような小規模かつアジャイルベースの開発をするチームにはフィットしていると感じました。
サイクルタイム分析:今後標準化していく開発サイクルをよく表していると思います。特にレビュー周りは特に注視していきたいですね。
行ったこと
開発サイクル・ルールの見直し
ブランチルールに始まり、レビューの必須化を含めた開発サイクルを見直しました。
メンバーからも今まで疑問に感じていたブランチ運用に手が加えられることで、やることと意味が明確になって良かったという声が上がりました。
チーム振り返りの定期実施
ルール化しても定着しなければ意味がありません。
そこで今まで振り返りの文化がなかったチームですが、月一の全体振り返りMTGと月の半ばで振り返り内容の進捗確認を行うことに。
開発ルールが守れているか、わかりにくいところや改善点がないかといった目の前の話から、コミュニケーション面含め開発者体験を向上させ、チームが健全に動けるように振り返り&改善サイクルを回し始めました。
今まであまり話せていなかった開発者目線の働きやすさ・楽しさを見直すきっかけになればと思っています。

今後の取り組み
まずは定めた開発サイクルを定着させていくのと、そこから改善点を見つけてブラッシュアップしていくことを目標にしています。
FindyTeam+の指標としては、弊チームではサイクルタイム分析を3ヶ月先ぐらいの重要指標として捉えており、まずはレビューをよく回して量と質を確保したいですね。
開発チームとしては世の中の普通の運営に近づけていくことになりますが、開発者が余計なことに時間を取られることを減らしていき、マインドフリーとして大切にしている「まだここにない、新しいモノを生み出す」ことにフォーカスしていければと思っています!
🌟 現在、積極採用中
【 0+α 】新たな価値を創造する仲間を募集しています!
