コード量からFour Keysへ。 経営層に新たな視点をもたらしたNECネッツエスアイの取り組み
コミュニケーションに関わるさまざまなサービスを提供し、DX事業のブランド「Symphonict(シンフォニクト)」を展開する、NECネッツエスアイ株式会社。エンジニア組織における個人の振り返りや組織の課題発見に、エンジニア組織支援クラウド「Findy Team+」を活用いただいています。
今回は、Symphonict事業推進本部に所属するグループマネージャーの古澤さん、マネージャーの坂井さん、スクラムマスターの山下さんにインタビュー。ウォーターフォール開発からアジャイル開発への移行を進める中、どのような背景から「Findy Team+」を導入し、どのようなベネフィットを得られたかなどについて、お話を伺いました。
目次
組織が立ち上がった2年前から、アジャイル開発を推進
――まず最初に、皆さんの主なご経歴や現在の役割を教えてください。
坂井:2004年に新卒で入社し、入社時からソフトウェア開発を続けています。2022年から現在の組織のマネージャーになり、現場から管理までプレイングマネージャーとして業務しています。
古澤:2000年に新卒で入社しました。入社後の6~7年間は、携帯電話のソフトウェア開発に携わり、その後は、通信キャリアやエンタープライズ向けのソフトウェア開発を行っていました。3年前に自社サービスを開発する現在の組織へ異動してきました。
山下:2014年に新卒で入社し、4年ほど開発部門でロボット内部のソフトウェアやタブレットのアプリケーション開発を行いました。その後、別の部門で4年間パブリッククラウドのアーキテクトを経験し、現在は社内のアジャイル推進とスクラムマスターを担当しています。
――皆さんが所属されている組織について、教えていただけますか?
坂井:私たちはSymphonict事業推進本部の先端技術開発グループに所属しており、グループマネージャーを古澤が務めています。さらに、そのグループ内にあるSymphonictサービス開発チームに坂井と山下が所属しており、私はそこでマネージャーを担当しています。
――どのような背景から、アジャイルを推進していくことになったのでしょうか?
坂井:2022年に組織が立ち上がった際、このVUCAの時代を生き抜くために、組織のアジリティを上げていかなければならない。そのために、アジャイルな組織になる必要があるという話になりました。
しかしながら、私たちにはその知見がなかったため、まずはコンサルタントの支援を受け、アジャイルの基礎を叩き込んでもらうところからスタートしました。初めの3ヵ月は座学を中心に行い、その後、PoC案件でスクラムチームを1つ立ち上げたのが始まりです。そして、さらに2つ目のチームを立ち上げ、現在も開発を継続しています。
――現在チームでは、どのようなミッションを掲げていますか?
坂井:部の名前についている「Symphonict」というのは弊社のブランドで、“デジタルでつなぐ”というコンセプトのもとお客様のDXイノベーションをサポートするサービスの総称です。Symphonictを実現するために、「早く、安く、巧く」サービスを提供できるプラットフォームを準備することや、そのプラットフォーム上でサービスを開発することが大きなミッションとなっています。
Symphonictのブランドにはさまざまなサービスがありますが、現在アジャイル開発を行っているサービスは、主にお客様向けのポータルサイトになります。私としては全ての開発をアジャイルでやっていきたいという思いがあるのですが、現状はアジャイルの案件数がそれほど多くないのが実情です。
自社サービスは作ったら終わりではなく、常にフィードバックをもらいながら、より良いものに更新し、価値を高め続けなければならないと思っています。そのためには、やはりアジリティが重要であると考えています。私たちのミッションと照らし合わせても、アジャイルな組織としてリリース頻度を高めていくことが必要だと考えています。
――チームで設定されている、OKRやKPIはありますか?
坂井:リリースするサービス数やアジャイルのスクラムチーム数などはKPIとして設定されています。また、運用フェーズでは、サービス稼働率、インシデント発生数、インシデントの対応にかかる日数などがKPIになっています。
ただし、チーム毎の1日のリリース回数や、プルリクの作成数など、スクラムの活動に特化したKPIはまだ設定されていません。
開発生産性に関する疑念から、「Findy Team+」の導入へ
――開発生産性の計測に取り組み始めたきっかけを教えてください。
坂井:今年の3月に、社内で「アジャイルの方が、ウォーターフォールよりも生産性が低いのではないか?」という声が上がりました。その時、私は「そんなことはないだろう」と感じたと同時に、生産性を測る指標がコード量だったことにも違和感がありました。
そこから、生産性をどのように測るべきかを調べ始め、『LeanとDevOpsの科学』などを読み、Four Keysのことを知りました。そこで、そもそも本当に生産性が低いかどうか、まずは数字で見える化しなければならないと思ったのがきっかけです。
――そうした生産性に関する情報を調べるなかで、「Findy Team+」を見つけていただいたのでしょうか。
坂井:最初は私が片手間で、GitHubのAPIを使ってAWSにデータを取り込み、BIツールで可視化しようとしていました。それを作る途中でたまたま「Findy Team+」を発見しました。これを参考に似たものを作ろうと思ったのですが、ものすごく大変で(笑)。「Findy Team+」のサイトを見てみると、とても高機能だったため、これは自分で作るよりも導入した方が良いなと思いました。
――その後、どのような流れで「Findy Team+」の導入が決まりましたか?
坂井:4月の組織変更で新たな本部長が着任し、そのタイミングで本部長に直接話を聞いてもらえる機会がありました。そこで私は、開発力を高めてリリースを早めていくためには、生産性を計測する必要があるという考えと、Four Keysの導入を提案しました。さらに、そのFour Keysを可視化できる「Findy Team+」というツールがあると伝えたところ、トントン拍子で導入まで進みました。
――「Findy Team+」の導入前に、懸念されていた部分はありましたか?
坂井:「Findy Team+」では個人の数値が計測されるため、個人の能力面も可視化されてしまいます。その数値だけで100%判断できるわけではないにしても、そういった数値をメンバーに見せて大丈夫なのかという懸念がありました。現在、導入から4ヵ月経ちましたが、そういった懸念に関する声は特に上がってきていません。
経営層まで、Four Keysが浸透したことで意識が変化
――開発生産性の計測を通じたゴールを、どういったところに設定していますか?
坂井:ウォーターフォールとアジャイルの比較が最初のトリガーにはなったものの、そもそも比較するものではないため、今はそこにはあまりフォーカスしておらず、純粋に私たちのスクラムチームにおけるFour Keysの可視化を目的にしています。最終的には、お客様にどれだけ価値を届けられているかを計測したいのですが、まずは開発のアウトプットとしてFour Keysやプルリク数を向上させていくことを目指しています。
古澤:生産性という言葉のイメージから、一般的な「開発コード量」のみを見て、アジャイルは生産性が落ちると思っている人は、社内にもまだ存在します。 ですが、デプロイ頻度、リードタイムまで生産性と考えるような価値観が、ようやく少しずつ浸透してきました。とはいえ、まだまだアジャイルでの開発が軌道に乗っているとは言えず、お客様に価値を提供するところまで持っていくことがゴールだと考えています。 ――目標に設定されている、具体的な数値などはありますか?
坂井:私たちのデプロイ頻度は、まだ2ヵ月に1回程度なので、まずは1ヵ月に1回のデプロイを目指しています。また、コミットからマージまでの時間を表すサイクルタイムですが、今は100時間を超えているため、24時間を目指そうと開発チーム内で目標設定しています。ただし、これはまだ明確に決めているわけではなく、現状は可視化してみて、次の段階で具体的な数値目標を設定していきたいと考えています。
――「Findy Team+」の活用について、スクラムマスターをされている山下さんから見ていかがでしょうか?
山下:チームの活動において、自分たちがどれだけ効率的に開発できているかを可視化できるところが、とても有用だと思っています。スプリントごとの振り返りで、今まではメンバーが感じていることをベースに話すことが多かったのですが、今は「Findy Team+」の数字を見ながら実態に則した話もできているので、振り返りの質が向上しました。
2週間のスプリントの中で、明らかに課題があった場合は別ですが、そうではなく計画通りに開発ができた時、はたして本当に効率が良かったのかどうかは、おそらく数字がないと判断できません。ですので、チームの活動を改善するための取っ掛かりとしても非常に有用なツールだと感じています。
――スプリントの振り返り以外で、「Findy Team+」を見る場面はありますか?
坂井:振り返り以外では、マネージャーを含めて各個人が自由に見たい時に見ています。また、同じ本部内に品質管理グループという、プロジェクトやアウトプットの品質をチェックするグループがあるのですが、そのグループもプロジェクトの状況を見るために「Findy Team+」の数字を見たいと言っています。
――ここまでにお話いただいた以外にも、開発生産性を計測することによるベネフィットを感じた部分があれば教えてください。
坂井:「Findy Team+」を導入してから、経営層にもFour Keysが浸透してきた印象があります。以前はコード量をもとに話していた人も、最近ではFour Keysで話すようになり、意識が変化してきた部分があると思います。
マネージャーとしての立場から見ると、「Findy Team+」では活動量が見えるので、プロジェクトの負荷が高くなっている場合や、何らかの問題が生じている場合に気付きやすくなりました。加えて、レビュアーの負担や偏りも可視化されるので、メンバーからもそれを意識するような発言や、改善しようとする動きが出てきています。
山下:スクラムマスターとしてチームに改善を促す際に、今までは実際にやってみてどうだったかという体験をもとに話をしていました。ですが、例えばPBI単位でブランチを切るとか、タスクレベルでなるべく細かくプルリクを出すとか、そういったところも数字で見えるようになったので、説得力を持って提言できるようになりました。
坂井:課のメンバーが半期ごとに目標を立てるときに、「Findy Team+」の数字を使って目標を立てるようになり、活用されていることを実感しています。具体的な数字で目標を立てられるので、評価もしやすく、成長を促しやすくなったと思います。
――経営層へのレポーティングなどに、「Findy Team+」を活用いただいている場面はありますか?
坂井:先日、経営層向けにチームの「Findy Team+」の数字を見せながら、開発チームの状況を説明しました。今後も定期的に「Findy Team+」を活用して説明を行っていこうと思っています。
山下:その説明の場で印象的だったのが、経営層から「今はこういう指標を見るんだ」、「これはあまり考えたことがなかったな」といったコメントが出たことでした。組織としての振り返りに、今までになかった新しい観点を取り入れられるツールなのかなと思います。
開発組織に閉じない生産性まで、可視化していきたい
――「Findy Team+」で計測するにあたって、難しかったポイントはありましたか?
坂井:「Findy Team+」で計測するためには、Gitのブランチ戦略を適切に合わせる必要があり、私たちの従来のやり方を少し変える必要がありました。例えば、空コミットを実施してからコーディングをスタートさせることや、同じプルリクをマージした時に二重集計されないようにタグ付けするなど、Gitの運用をルール化し、チームに浸透させて上手く使いこなせるようになるまで、ひと手間あったと思います。
山下:「Findy Team+」で難しいのは、誰がどこをどう見たら良いかが分かりにくいところでしょうか。データはたくさん取れており、有用な指標もたくさんあるはずなのですが、それを有効活用することは難しいと感じました。
私や坂井は、ファインディの方との定例で、サポートを受ける中で「こういうところを見ればいいんだな」と、徐々に分かってきました。ですが、現場の開発メンバーにはまだあまりノウハウが伝わっていないため、そこを浸透させ、共通認識化させていくことがツールを活用する上での課題だと感じています。
――今後のトライとして、現在考えられていることがあれば教えてください。
古澤:ウォーターフォールとアジャイルを両方見ている立場としては、品質の観点では、アジャイルの方が若干良いと感じています。しかし、単純比較はできないな、とも感じています。
その理由として、アジャイルはプロダクトオーナーの判断で、開発機能の優先順位やリリース可否を変更できますが、ウォーターフォールではそうはいきません。
アジャイルが途中で変更されやすいことを踏まえると、計画時点でのPBIがどのくらい守れたのかといった指標も、数値的に見れると良いなと思っています。
坂井:ビジネスサイドまで含めた可視化をしていきたいと考えています。開発に閉じた生産性は「Findy Team+」で見えますが、本当に価値が届けられたのかまではわかりません。PBIや要求が生まれてから、リリースまでにどれだけ時間がかかったのかも見えないので、それを見えるようにしたいという思いがあります。
あとは、開発コストも可視化したいと思っています。サービスの収支については別途取り組んでいるのですが、もっとブレイクダウンして機能ごとの開発コストも見えるようにしていきたいと考えています。
価値が届けられているかどうかという部分については、どう計測するべきかがまだはっきりと見出せていません。アクセス数で測るのか、満足度アンケートを取るのか、それとも他にもっといい指標があるのか。これについては私たちの今後の課題だと思っています。
――それでは最後に、組織のアピールポイントがあれば教えてください。
坂井:開発力の高いチームが立ち上がってきているので、開発するもののビジョンさえ立てば、どんどん良いものを開発していける組織です。また、本部長が新技術の取り込みに積極的で、データ分析やAIをもっと取り入れていこうと掲げており、生成AIのCopilot導入に向けて動いています。私としても開発者の体験を向上させて、みんなが楽しく開発できるようにしたいと思っています。
――皆さん、本日はありがとうございました!
※「Findy Team+」のサービス詳細は、以下よりご覧いただけます。 https://findy-team.io/service_introduction