Qiita Conference 2022で登壇した際の発表資料です。 https://qiita.com/official-campaigns/conference/2022
2020年2月以降、どのようにエンジニア組織を変えてきたのか、当時の課題感から現在までの取り組みを説明しています。
登壇時のアーカイブ動画はこちらで配信されています。 https://youtu.be/rzm5xfd71-Q?t=9941
© kaonavi, inc.働きやすく、成長し続けられるエンジニア組織を目指して2022/06/24CTO 兼 CTO室長松下 雅和
View Slide
© kaonavi, inc.自己紹介2001/04 2005/08 2011/01 2014/10 2020/02SEアーキテクト都築電気株式会社株式会社オープンストリームエンジニア株式会社サイバーエージェントCTO株式会社トランスリミットCTO株式会社カオナビ松下 雅和 / @matsukaz株式会社カオナビ CTO● AWS, Node.js, TypeScript, PHP, Go● 二児(姉妹)の父● 漫画, アニメ, ゲーム, カメラ, 自転車2
© kaonavi, inc. 3タレントマネジメントシステム『カオナビ』社員の個性・才能を発掘し戦略人事を加速させるタレントマネジメントシステム『カオナビ』
© kaonavi, inc. 4カオナビに情報を一元化し、人事や経営の課題を解決する他システムのデータ 属人的な情報 エクセルのデータ 紙の情報人材情報の一元化・見える化人事業務の効率化 経営の意思決定支援評価運用の効率化採用のミスマッチ・ハイパフォーマー分析人材配置・要員シミュレーションスキル管理・人材育成モチベーション分析・離職分析ES調査・エンゲージメント向上
© kaonavi, inc. 5タレントマネジメントシステム市場シェアNo.1利用企業数推移 業界シェア導入企業数は年々増加7各種アワードも受賞GOOD DESIGN AWARD 2016グッドデザイン賞HRテクノロジー大賞2017総合マネジメントサービス部門受賞 優秀賞ASPIC IoT-AI-クラウアワード 2018ベストイノベーション賞導入企業 大手からベンチャーまで 業界規模問わず導入年連続※ITR「ITR Market View:人材管理市場2022」人材管理市場-ベンター別売上金額シェアで7年連続1位(2015~2021年度予測) ( 2022年3月末日時点)
© kaonavi, inc.カオナビの歴史6導入社数20001500100050002013/03 2014/03 2015/03 2016/03 2017/03 2018/03 2019/03 2020/031791129385444520398402120612021/0325002022/032497東証マザーズ上場
© kaonavi, inc.カオナビの歴史7導入社数20001500100050002013/03 2014/03 2015/03 2016/03 2017/03 2018/03 2019/03 2020/031791129385444520398402120612021/0325002022/032497黎明期(オンプレ型)サービスリプレース(SaaS型)急速な組織化
© kaonavi, inc.カオナビの歴史8導入社数200015001000500017911293854445203984021206125002497黎明期(オンプレ型)サービスリプレース(SaaS型)急速な組織化SES中心の開発エンジニアが徐々に増加職能別組織へエンジニア人数エンジニアが急増チーム開発へ2013/03 2014/03 2015/03 2016/03 2017/03 2018/03 2019/03 2020/03 2021/03 2022/03
© kaonavi, inc.カオナビの歴史9導入社数200015001000500017911293854445203984021206125002497黎明期(オンプレ型)サービスリプレース(SaaS型)急速な組織化SES中心の開発エンジニアが徐々に増加職能別組織へエンジニア人数エンジニアが急増チーム開発へ2020/02カオナビ入社2020/09CTO就任2013/03 2014/03 2015/03 2016/03 2017/03 2018/03 2019/03 2020/03 2021/03 2022/03
© kaonavi, inc.カオナビの歴史10導入社数200015001000500017911293854445203984021206125002497黎明期(オンプレ型)サービスリプレース(SaaS型)急速な組織化SES中心の開発エンジニアが徐々に増加職能別組織へエンジニア人数エンジニアが急増チーム開発へ2020/02カオナビ入社2020/09CTO就任2013/03 2014/03 2015/03 2016/03 2017/03 2018/03 2019/03 2020/03 2021/03 2022/03今日のお話
INDEX© kaonavi, inc. 11● エンジニアとしての取り組み2020/02 〜 2020/08● CTO・組織全体の取り組み2020/09 〜● CTO室の立ち上げ2022/04 〜● まとめ
© kaonavi, inc. 12エンジニアとしての取り組み2020/02 〜 2020/08
© kaonavi, inc. 13入社時のカオナビ
© kaonavi, inc. 14必要なものを見極め捨てる重要性を知ること自分が出来ることを他の人でも出来るようにすること相手の言葉を鵜呑みにせずその背景や理由を考えることシンプル仕組み化仮説思考VALUEーカオナビが大切にしている仕事観ー会社のバリュー
© kaonavi, inc.働く環境15● 原則出社勤務○ 「ぎゅっと働いて、ぱっと帰る。」■ いかに時間を使わず、効率よく成果を出せるかが求められる
© kaonavi, inc.働く環境16● 2020年2月以降は、新型コロナウイルス感染症対策で大きく変化○ コアタイムが10時〜15時○ 在宅勤務許可(3/3)○ スイッチワーク導入(4/17)11時〜15時(2/18)在宅勤務推奨(3/10) 出社禁止(4/7)
© kaonavi, inc.エンジニア文化17● ボトムアップによる変化を歓迎○ jQuery / JavaScript React / TypeScript○ 一部システムでのGo採用○ スクラムの導入○ エンジニア勉強会 (2019/05から隔週開催)https://vivivi.kaonavi.jp/articles/owaribe-komatsu-210629/
© kaonavi, inc.エンジニア文化18● ビジネスサイドとの連携○ 全社スプリントレビュー■ 週に1回、全社員を巻き込んだ共有・フィードバックの場■ 毎回70名以上、多いときは100名以上が集まる■ これもボトムアップで生まれた仕組み
© kaonavi, inc. 19組織的な課題
© kaonavi, inc.組織的な課題20業務委託に依存チーム間の連携が不十分キャリアパスが整っていない技術責任者が不在
© kaonavi, inc. 21● 社員に対して業務委託の割合が高い○ 業務委託中心の開発体制の流れ● 知識や技術が会社に残らない● オーナーシップを持って行動できる人が少ない業務委託に依存
© kaonavi, inc. 22● 社員の割合が少なく、チーム間で積極的な連携が行われない● チームが担当する機能ごとに個別対応してしまう○ 機能によって実装方式が異なる○ 共通化が行われにくい● 他チームが加えた変更の影響が後から発覚することもチーム間の連携が不十分
© kaonavi, inc. 23● 会社としてのグレード制度まで● 目標設定や評価がやりづらい○ スキルアップのモチベーションにも関わる● 今後の社員の増加を見込んでキャリアパスの整備が必要キャリアパスが整っていない
© kaonavi, inc. 24● プロダクトの意思決定は明確だが、技術に関する意思決定は曖昧○ だからこそボトムアップの文化が生まれたのかもしれない● 全体最適を考えたり、大きな方針が打ち出せない● システム全体に関わる意思決定が困難○ 無難な判断になりがち技術責任者が不在
© kaonavi, inc. 25技術的な課題
© kaonavi, inc.カオナビの技術的な課題26モノリシックなシステム技術的負債の蓄積品質管理の難しさ
© kaonavi, inc. 27● 開発スピードが上がらない○ 複雑度が高く、影響範囲の把握が困難● 生産性がスケールしない○ 機能開発が相互に影響する可能性があり、同時開発が困難● リリースにかかる工数が大きい○ リリース対象が大きくなり、影響調査やテストに時間がかかる● マイクロサービスに対する過度な期待モノリシックなシステム
© kaonavi, inc. 28● 機能開発が優先されてしまう● 対策として、技術品質改善活動を推奨○ 制度として週に2時間の活動が可能○ 活動は個人に任されており、取り組んでいたのは一握り○ 時間も短く、大きなカイゼンはできない技術的負債の蓄積
© kaonavi, inc. 29● 開発者によって品質がばらつく○ コードレビューはしているものの、全ては見きれない● 機能面ではQA組織が品質を保証○ エンジニアの品質に対する意識が弱くなる○ 開発の最後にQAを通すため、手戻りが発生しやすい● ドキュメントも不十分○ 実装から理解するのが困難な仕様も品質管理の難しさ
© kaonavi, inc. 30オンボーディング
© kaonavi, inc.入社時の立ち位置31● 前職ではCTOを経験○ 球拾い精神で、こぼれ落ちるあらゆるタスクをこなす日々○ とはいえ少人数のスタートアップ、経営のことは分からず…● もっと会社組織を知りたい、経営層と近い位置で働きたい
© kaonavi, inc.入社時の立ち位置32● 前職ではCTOを経験○ 球拾い精神で、こぼれ落ちるあらゆるタスクをこなす日々○ とはいえ少人数のスタートアップ、経営のことは分からず…● もっと会社組織を知りたい、経営層と近い位置で働きたい● 執行役員 兼 プロダクト本部長の下で、横断的に動く立ち位置に
© kaonavi, inc.着実な成果を出す33● システム改善○ 性能改善○ 不具合改修○ 脆弱性診断で見つかった問題の対応● 開発支援○ いくつかの大きめのプロジェクトで設計・開発を支援■ 軌道に乗るまでスクラムイベントに参加し、随時フォロー
© kaonavi, inc.着実な成果を出す34● 新卒研修対応○ 5日間のPHP研修● 経営層とPoC開発
© kaonavi, inc.ここまでに学んだもの・得たもの35● 採用している技術スタック○ ほぼ未経験だったもの● システムとドメイン知識○ タレントマネジメントシステムに求められる特有の要件○ マルチテナントなSaaSサービスの仕組み○ カオナビならではのシステム構成
© kaonavi, inc.ここまでに学んだもの・得たもの36● 開発全般の流れ○ スクラム開発○ 開発・コードレビュー・MR・リリースまでの流れ● 頼れる仲間○ 主体的に仕事に取り組んでいる人○ まわりの人を積極的に支援してくれる世話焼きな人○ より良い組織に変えるために、まわりを巻き込んでる人○ マネージャーも含め、変化を嫌う人は誰もいなかった!
© kaonavi, inc. 37ボトムアップで組織課題やシステムの改善へ
© kaonavi, inc.チーム間の連携強化38● EMと議論し、エンジニア分科会を新たに設置○ テックリードやEMが課題の検討・対応方針を決める■ チームを横断する技術課題■ エンジニア組織の改善■ ルールの作成・改訂○ 決まった内容は、全エンジニアが集まるエンジニアMTGに持ち込まれ、共有や意思決定が行われる
© kaonavi, inc.エンジニア採用の強化39● 積極的に対外活動を行い、カオナビの認知度を上げるhttps://speakerdeck.com/kaonavi/kaonabifalsekaizensutori-douyatuteaziyairunakai-fa-zu-zhi-wozuo-rishang-getafalsekahttps://speakerdeck.com/matsukaz/withkoronadekaonabiniqi-kotuta3tufalsebian-hua
© kaonavi, inc.モノリシックなシステムの対応方針を提案40● マイクロサービス化計画を立案○ 具体的な対象機能やフェーズ、マイルストーンを作成○ マイクロサービスに寄せる過度な期待をコントロール○ ただしマイクロサービス化はあくまで手段、ゴールにはしない
© kaonavi, inc. 41ボトムアップの限界
© kaonavi, inc.ボトムアップではできないこと42● 組織全体に働きかけることが困難● 即戦力のエンジニア採用が急務○ 採用に深く関わることができない● 大きな施策を進めることは難しい○ 進むべき方針は示せても、具体的な体制はつくれない
© kaonavi, inc. 43執行役員 兼 本部長「もうCTOで良くない?」
© kaonavi, inc. 44そんな流れでCTO就任
© kaonavi, inc. 45CTO・組織全体としての取り組み2020/09 〜
© kaonavi, inc.ニューノーマル時代のカオナビへ46
© kaonavi, inc.My Work Style制度47場所と時間に縛られない、新たな働き方制度を開始
© kaonavi, inc.新たなバリュー48
© kaonavi, inc. 49組織的な取り組み
© kaonavi, inc.組織的な取り組み50エンジニア組織のロール再定義採用広報活動技術力向上の促進
© kaonavi, inc.組織的な取り組み51エンジニア組織のロール再定義採用広報活動技術力向上の促進
© kaonavi, inc.Before After● 技術領域ごとに一人しかいない○ フロントエンドTL、バックエンドTLなど● チーム外から支援する立ち位置○ チーム内で誰がリーダーシップを持つかはチーム次第● TL決定プロセスが不明瞭● 一般的なTLのイメージと異なる● チームに一人設置● 技術でチームをリードする○ リーダーシップが重要● チームの生産性を最大化させる● リリース・運用・保守に責任を持つ● TL同士が連携し、全体最適を図る● 品質管理、開発進捗管理● 本人の意思+CTO/VPoEの合意で決定TL (テックリード) を再定義52
© kaonavi, inc.チームにおけるロールの立ち位置53PdMDirectorEMTLExpert技術領域人・チーム領域プロダクト領域支援 支援Expert=特定領域に優れた知識やスキルを持つエンジニアをCTO/VPoEが認定
© kaonavi, inc. 54エンジニアのキャリアパス
© kaonavi, inc.組織的な取り組み55エンジニア組織のロール再定義採用広報活動技術力向上の促進
© kaonavi, inc.サバイバルモードから学習モードへ56● 忙しいときほどゆとり時間が大事サバイバルモード学習モード自己組織化モード● 学ぶ時間がない● 定期的に火消し作業● 遅れと残業● 十分なゆとり時間● スキルの習得時間がある● 誤りを許容する● チームにスキルがある● 自分たちで意思決定できる● 衝突を内部解決できる● ゆとり時間を作る● 残業を減らす● 見積もりし直す● チーム自身で自分たちの問題を解決できるように教える
© kaonavi, inc.スナバ57● 将来的に事業貢献・プロダクト改善につながる可能性がある、あらゆる活動を自由に行える時間 (2h/週)● 未来の自分、未来の誰かのために、ゆとり時間を用意する制度● 技術品質改善活動の制度をリニューアル
© kaonavi, inc.スナバ58● 最初はあまり使ってもらえなかった● 自ら進んで活用することで、多くの人が使ってくれる状態に!○ Slack上の特定の投稿にスレッドで返信すると、画面上にメッセージが流れるアプリを開発 (Comment Screenに近いもの)
© kaonavi, inc.イドバタ59● 業務時間外で開催される学びの場● お酒を飲みながらラフにメンバーと共有・交流することで、カジュアルにコラボレーションを促す● 過去の開催内容○ あなたのターニングポイントは? 〜私、その時に覚醒しました〜○ 開発と品質○ RSGT2022セッション動画上映会○ FY2021納会
© kaonavi, inc.カタリバ60● 社内勉強会に名前を付けただけ● 引き続き隔週開催しており、現時点で74回を迎えた● 最近は枠があっという間に埋まるぐらいに登壇希望者が増えている● 先述のMessage ScreenでSlackも大盛りあがり!
© kaonavi, inc.組織的な取り組み61エンジニア組織のロール再定義採用広報活動技術力向上の促進
© kaonavi, inc.採用広報チーム新設62● エンジニア採用は年々困難に○ エンジニアの協力は不可欠○ 明日の仲間を見つけるために、主体的に関わって欲しい● 全エンジニア向けに仲間を募集!○ 採用チーム + 有志で集まったメンバーで採用広報チームを新設○ publicなチャンネルでいつでも参加可能に● 週次のミーティングで様々な施策を立案・実行○ まずはカオナビの開発組織を多くの方に知ってもらう
© kaonavi, inc.採用広報チームの実績63● Advent Calendar 2021○ 一人2日以上を覚悟していたが、無事に25人集まった!● 他にもイベント協賛・登壇、カジュアル面談などhttps://qiita.com/advent-calendar/2021/kaonavi
© kaonavi, inc.採用広報チームの実績64● 2022年1月からはkaonavi Tech Talkを毎月開催中!○ カオナビの開発組織の文化・人を多くの方に知ってもらいたい○ 社内外で学びを循環させ、コレボレーションを実現する場を創出したいhttps://kaonavi.connpass.com/
© kaonavi, inc. 65技術的な取り組み
© kaonavi, inc.技術的な取り組み66QA体制の見直し技術的負債解消へ品質の改善
© kaonavi, inc.技術的な取り組み67QA体制の見直し技術的負債解消へ品質の改善
© kaonavi, inc.マイクロサービス化タスクフォースを発足68● 全体最適の視点で開発組織全体を巻き込む○ 方針や進捗を共有しながら進める● マイクロサービス化はあくまで手段、最適な方法を常に模索する● オーナーシップをCTOが持つ● 共通基盤となりうる箇所の実装把握・リファクタリングから○ Big Rewriteを避けるため○ 着実に進めていく
© kaonavi, inc.フロントエンド支援チーム69● フロントエンドが抱える問題を専門性を持って解決● システム全体のフロントエンドの改善● 技術的負債への取り組み
© kaonavi, inc.技術的な取り組み70QA体制の見直し技術的負債解消へ品質の改善
© kaonavi, inc.QAからQCへ71● 本来のQAは、本部外から品質を保証する役割● 実際は本部内のQAチームで品質担保の役割を担っていたため、QA(Quality Assurance)ではなくQC(Quality Control) へ● QA組織を解体、チーム内にQCとして配属●●チーム ✕✕チームQAチームQCQC●●チーム ✕✕チームQC QC QC横串組織
© kaonavi, inc.技術的な取り組み72QA体制の見直し品質の改善技術的負債解消へ
© kaonavi, inc.エンジニアの当たり前品質を明文化73● 新卒から経験豊富なエンジニアまで、品質にはばらつきがある● 当たり前品質を明文化することで、品質のばらつきを抑止○ 実装時に計算量を意識する○ データ量に制限を設ける○ ORM利用時も実行されるSQLは必ず確認する○ ログ出力に個人情報が含まれないようにする○ etc…
© kaonavi, inc.ポストモーテム運用74● 失敗に対する振り返り・学習・再発防止活動● インシデントレベルの高い事象を対象に○ クリティカルな失敗からの学びを優先● 実施による変化○ 組織全体として取り組むことで、根本的・恒久的なカイゼンが進む■ 開発フローの改善・プロダクト品質向上・組織成長へ
© kaonavi, inc. 75ここまでのふりかえり
© kaonavi, inc.カオナビの組織的な課題76業務委託に依存チーム間の連携が不十分キャリアパスが整っていない技術責任者が不在
© kaonavi, inc.カオナビの組織的な課題77業務委託に依存チーム間の連携が不十分キャリアパスが整っていない技術責任者が不在採用広報活動エンジニア組織のロール再定義エンジニア組織のロール再定義CTO就任技術力向上の促進
© kaonavi, inc.カオナビの組織的な課題78業務委託に依存チーム間の連携が不十分キャリアパスが整っていない技術責任者が不在採用広報活動エンジニア組織のロール再定義エンジニア組織のロール再定義技術力向上の促進トップダウンボトムアップトップダウントップダウントップダウンCTO就任
© kaonavi, inc.カオナビの技術的な課題79モノリシックなシステム技術的負債の蓄積品質管理の難しさ
© kaonavi, inc.カオナビの技術的な課題80モノリシックなシステム技術的負債の蓄積品質管理の難しさ技術的負債解消へ品質の改善 QA体制の見直し採用広報活動技術的負債解消へ
© kaonavi, inc.カオナビの技術的な課題81モノリシックなシステム技術的負債の蓄積品質管理の難しさ技術的負債解消へ品質の改善 QA体制の見直し採用広報活動技術的負債解消へボトムアップ トップダウントップダウンボトムアップボトムアップトップダウンボトムアップ
© kaonavi, inc. 82順調?
© kaonavi, inc. 83機能開発が優先されてなかなか進まない…モノリシックなシステム技術的負債の蓄積技術的負債解消へ技術的負債解消へ
© kaonavi, inc. 84横断的に動いて技術的な課題を解消する組織が必要…!
© kaonavi, inc. 85CTO室立ち上げ2022/04
© kaonavi, inc.CTO室のチーム構成86FEST(Front-End Support Team)BERT(Back-End Re-architecturing Team)+SRE(Cross-sectional SRE)採用チーム● 全社的な技術・運用課題の解決● 各チームのフロントエンドが抱える問題を解決● カオナビのフロントエンドの改善● 開発組織の採用にコミット● バックエンド領域に関わる技術的負債の解消● マイクロサービス モジュラモノリス
© kaonavi, inc.CTO室メンバーに求めるマインド87● 主体性● 巻き込み力・飛び込み力○ 横断的に動くためには、組織全体へ飛び込み、巻き込んでいく必要がある● コラボレーション (協調性・全体最適)● 誠実さ● 失敗を恐れない
© kaonavi, inc.to be continued...88
© kaonavi, inc. 89まとめ
© kaonavi, inc. 90入社時はボトムアップを大事にしてきたはず
© kaonavi, inc. 91気づけばトップダウンで物事を決める立場に
© kaonavi, inc. 92組織を改善するためにはボトムアップもトップダウンもどちらも大事
© kaonavi, inc. 93何よりも仲間の存在があったからこそ
© kaonavi, inc. 94資料に出てきたキーワードたちトップダウン ボトムアップ巻き込み力 飛び込み力協調性 世話焼き
© kaonavi, inc. 95
© kaonavi, inc. 96これからもより良い組織を目指してみんなで変化を起こしていく
© kaonavi, inc. 97WE ARE HIRING!!https://corp.kaonavi.jp/recruit/list/