Blog::kfly8

prove t/foo/bar/baz.t

勘を減らしてテクノロジーの力でエンジニア組織を応援したい|Findyに入社しました👍

こんにちは。こばけんです。

8月末に約11年半勤めたモバファクを退職して、9月からFindyで働きはじめました。

モバファクでは、エンジニアとして新卒で入社し、プロダクトマネージャー、エンジニア組織開発責任者など任せていただき、たくさんの方にお世話になりました。ここ数年のモバファクでの仕事はエンジニア組織全体を改善する仕事でしたが、こちらをこじらせ、まだやるべきことはありつつも退職をさせていただました。応援の言葉をかけていただいた同僚に感謝してます。ありがとうございます。ありがとう。

Findyは、五反田の会社のよしみで繋がってはいましたが、正直入社することは想像していませんでした。が、今はもっと早く知っていれば良かったと思ってます。技術コミュニティに育てられた恩があるので、技術に関わる人や組織に向けたプロダクトを作りたいと思っていました。また、エンジニア採用も組織も問題を抱えてない会社はないので、ここに貢献できたら、シンプルに世の中よくなって、面白いだろうと。Findyはドンピシャでした。まだ入社して1週間程度なので熱に浮かされてるかもしれないですが、エンジニア組織をあらゆる面で応援をするために、また10年以上取り組めたら嬉しいです。

少し脱線しますが、私はPerlコミュニティが好きでYAPCなどの運営しています。残念ながら(?)、FindyはPerlの会社ではなかったですが、引き続きPerlコミュニティの活動はします。ちなむとFindyの会議室の名前は、TypeScript、Go、Rubyといったプログラミング言語から名前を取っています。Perlとついた会議室がなかったので、CTOのma3tkに相談してみようと思います😉

配属は、エンジニア組織のパフォーマンスを可視化するFindy Teamsです。

Findy TeamsでDevOpsのFour Keysを可視化してる様子 / ©Findy

このエントリーでは、入社のキッカケにもなったFindy Teamsについて、掘り下げて書きたいと思います。

「クエリのチューニングの結果は、どうなった?」

メトリクスのマネジメントに関する話を少し*1書きます。Findy Teamsをなぜ作っているかに直結する話です。

唐突ですが、クエリをチューニングして、CPUの利用率が落ちると嬉しいですよね。「推測するな。計測せよ。」といった金言がありますが、システムのメトリクスは仮説検証、監視などのエンジニアリングのさまざまな場面でなくてはならないと思います。

エンジニア組織のパフォーマンスのメトリクスはどうでしょうか?ちょうど良いメトリクスがあれば、クエリのチューニングのように行動した結果を学べそうです。

定性情報大事。

当たり前かもしれませんが、システムと違い、人や組織の状態の観測は簡単ではないです*2。例えば「大丈夫」といった言葉の意味が、言葉通り大丈夫でなかったりします。もし人や組織の状態を測る定番のメトリクスがあったとしても、そこにいる人たちの感覚とずれているなら、メトリクスの選定や計測方法を疑った方が良いです。人や組織の思いは複雑で難しいです。(そこがうまく噛み合うと生産的ですし幸せだと私は感じるのですが。)もしデプロイ頻度が非常に高かったとしても、駆り立てられ精神的に張り詰めている開発現場であれば、持続的な開発に支障がでることは想像しやすいと思います。この記事は、エンジニア組織で定量的なメトリクスを使うことを薦める記事にはなりますが、定性情報大事。超大事と思ってます。

ヒアリングには信頼関係と経験がいる

ただ定性情報のデメリットはあります。まず定性情報のブレは念頭にいれた方がよいです。先の「大丈夫」のような例です。ヒアリング方法によって回答が変わったり、質問者の主観が入りやすいです。例えば上司に不満がある人が、上司に直接不満を打ち明けるでしょうか?経験豊かでメンバーと良好な関係のエンジニアリングマネージャーであれば、コミュニケーションをしてチームで何が課題か判断していくことができるかもしれませんが、若手や入社したばかりのマネージャーの場合、まず定性的な情報を得ることから難しいと思います。特に急拡大する事業に、組織が適応するにはエンジニアリングマネージャーが肝だと思いますが、中途エンジニアの採用市場は競争が激しく簡単な状況ではないです。そういった背景も踏まえると、エンジニアリングマネージャーの負担を減らすことは価値になるのではないかと思ってます。

ヒアリングは時間もかかる

そして、定性情報の取得に時間がかかることもデメリットです。開発場面の例えですが、ビルドにかかる時間が、5分と30秒だと開発のスピード感は違いますよね。5分かかれば、Twitterをする時間は余裕でしょう👌それと似たことがコミュニケーションで起きがちだと思います。「タスクが忙しいから後にしよう。」「チャットで話してるから十分かな。」と同僚との雑談を避ける(無意識の)障壁はあります。フルリモートになって「廊下」がなくなったことも、障壁の例だと思います。時間がかかることは避けがちで、意識高く保たないとコミュニケーションが成り立たないとしたら、じわじわと問題がおきがちです。

アンケートは手軽だが、頻度高くはできない

ヒアリングと比べ、アンケートは属人性を減らす手軽な調査手段です。例えば、心理的安全性の提唱者のエドモントン氏が、組織の心理的安全性の状態を推し測るために7つの質問を用意しています。Googleのre:Workで参照できます。他には業績や離職率に影響を与える傾向があるeNPSは「親しい知人や友人にあなたの職場をどれくらい勧めたいか」を問うだけのシンプルなアンケートです。エンジニア組織に目を向ければ、DX Criteriaもエンジニア組織について話し合うコミュニケーションの種になります。

しかし、アンケートの形式にもデメリットがあります。アンケート頻度です。アンケート頻度が高すぎれば、回答がめんどうになってテキトウな回答になったり、回答をしなくなる悲しい結末になりがちです。本当は日々開発チームは変化しています。「新しく入ったメンバーは開発に馴染めているか?元気かな?」「イシューの作り方を変えて、サイクルタイムは改善されたか?」など。クエリチューニングほど即結果は出ないですが、ちょっとずつ変化があります。

5月に入社した同僚のアクティビティの推移。開発のオンボーディングは順調そう! / ©Findy

日々の活動を用いて、メトリクスを計測する

LeanとDevOpsの科学の第二章でエンジニア組織のパフォーマンスはどういった尺度が望ましいか記載されています。この本(あるいは調査)では、エンジニアの活動に注目し、DevOpsのFour Keysが採用されていました。この結果指標を用いて、リーンマネジメントや継続的デリバリなどのプラクティスが統計的に有意に働くことを、この本では説明しています。この本は革新的だと思っています。一つは、エンジニア組織のパフォーマンスを日々の活動の事実を用いて計測したこと。もう一つが統計的に良いプラクティスを示したこと。これによって、勘や経験に頼るのではなく、再現をしやすい科学ででエンジニア組織に貢献するプラクティスを示したからです。

少しだけ補足すると、生産性の指標として、注目すべきはプルリクエストのマージされた数などアウトプットです。書いたコード量や働いた時間ではないです。また、開発をしていると、難しいバグに悩まされプルリクエストが思うように作成できないことはよくあります。そんな時、アウトプットが少ないことを窮屈に駆り立てられて良い気持ちになるエンジニアはいないと思います。アウトプットの背景の洞察まで含めてマネジメントの仕事になると思います。エンジニア組織の活動が可視化された後、改善をどう行うかで、組織のカラーが出ますし、頭をひねるところだと思っています。エンジニア組織のパフォーマンスを定量化できたとしても万全ではなく練習が必要で、この改善支援もできたら嬉しいです。

まとめると、エンジニア組織のパフォーマンスの状態を把握する方法は、次の表のようにまとめられます。それぞれ得手不得手があり、定量的なメトリクスで即時に状況を把握し、定性的な情報も組み合わせ洞察を得るのが最適のように感じます。これをより簡単にまとめると「勘を減らしてテクノロジーの力でエンジニア組織を改善する」ということだと思います。

エンジニア組織の状態把握の方法まとめ

Findy Teamsの今

エンジニア組織のパフォーマンスを開発活動に基づき可視化し日々の改善を支援することが、Findy Teamsのコンセプトになります。例えば、先に触れたDevOpsのFour Keysやサイクルタイムなどの可視化をしています。ありがたいことに利用いただいてる企業は順調に増えています。資金調達もありました。入社して一番びっくりしたことは、熱量のこもった大量のフィードバックです。Findy Teamsに課題が沢山ある証拠でもありますが、この期待に応えることで多くのエンジニア組織の貢献になるんだなと。この期待に応えられたときの世界が楽しみです。

📣 協力してくれませんか?

最後に協力をお願いしたいです。

エンジニア採用や組織のお困りごとや改善の事例などぜひ聞かせてほしいです。生の声はプロダクトに血が通わせるのに欠かせないと思うため、ぜひお願いします!

そして絶賛採用中です!エンジニアだけでなく、プロダクトマネージャー、デザイナー、カスタマーサポート、セールスと全体的に募集してます。求人が出てないポジションでもポジション考えます。まずはカジュアル面談で、Findyのことをお話しできたら嬉しいです。今回、触れられなかったですが、エンジニア採用のサービスを国内にもグローバルにも提供して、技術に関わる人や組織を包括的に応援する会社です。まだまだ触れられてない面白いところあるかなと。

もちろん、今すぐ応募も歓迎です👍

カジュアル面談の窓口はこちら meety.net

採用ページはこちら careers.findy.co.jp

求人一覧はこちら herp.careers

ではでは。

*1:まだ書き足りないです。

*2:システムのメトリクスが取りやすいのは、それに取り組んできた|いる人たちのおかげです。感謝!