Upgrade to Pro — share decks privately, control downloads, hide ads and more …

「そんな装備で大丈夫か、もっといいDeveloper eXperienceを頼む」を大規模開発でやってみた話

WHIsaiyo
February 16, 2023
1.8k

「そんな装備で大丈夫か、もっといいDeveloper eXperienceを頼む」を大規模開発でやってみた話

歴史ある巨大な組織で新しいことを行おうとすると巨大であるが故の問題にたくさん遭遇します。
ライセンス管理、予算、ステークホルダーへの説明、リスクアセスメント etc... これらの壁を乗り越えることは容易ではないですが、改善をやめてしまうと組織の生産性は徐々に低下していきます。
エンジニア採用が難しい今、新規に採用を増やす以上に、今いる開発者に活躍してもらうための生産性向上の取り組みは重要になってきます。
道半ばではありますが、開発者の生産性やモチベーションの上がるような世界を目指すために、どのような問題に直面し、どのような施策を考え、どのように乗り越えてきたのかについてお話しします。

萩田 篤[Works Human Intelligence]

株式会社Works Human Intelligence
Product Div. DX Squad Grp

2016年に入社。
インフラやSREを中心にやってきましたが、現在は社内の年季の入った環境を改善するべく、DX Squad チームという開発組織の生産性を向上させることを目的とした組織でエンジニアリングマネージャをしています。
組織の「水を運ぶ人」の役回りが多いです。

WHIsaiyo

February 16, 2023
Tweet

More Decks by WHIsaiyo

Transcript

  1. Developers Summit 2023 2016年に新卒で入社し、インフラやSRE、開発の足回りの改善に 携わり、現在は開発組織全体の開発者体験向上の取り組みを担当 するチームでマネージャをしています。 AWSからクラウドの便利さに Inspired され、 K8s

    からReconcilation Loop の仕組みに Inspired され、 スクラムからチームで働く良さを Inspired されました。 プライベートでは某キャンプアニメから Inspired され、 冬キャンにはまっています。 萩田 篤 はぎた あつし 5
  2. Developers Summit 2023 私たちの製品・組織の歴史 20年以上、保守・機能開発されてきた製品や組織にはどのようなことが起こるか • 認知負荷が高いコード • 管理の行き届いていないコード・ツール •

    組織の間に落ちてしまい、妖精が回している仕事 • 各組織との距離感(現場ー経営、現場ー周辺組織、隣の組織) • サイロ化 社内では九龍城砦 と言われることも 10
  3. Developers Summit 2023 14 コードや足回りを 改善する時間がない 優先順位づけすれば 大丈夫だ、問題ない コード以外でも やることがたくさん

    コードが複雑で 修正・機能追加に 時間がかかる 私たちの製品・組織の歴史(技術的負債) 死 神は言っている、 ここで死ぬ運命ではないと―― 不具合 新機能開発案件
  4. Developers Summit 2023 コードや足回りを 改善する時間がない 優先順位づけすれば 大丈夫だ、問題ない コード以外でも やることがたくさん コードが複雑で

    修正・機能追加に 時間がかかる 私たちの製品・組織の歴史(技術的負債) 死 神は言っている、 ここで死ぬ運命ではないと―― 不具合 新機能開発案件 足回りや改善は 後回しにせざる を得ないな…… もっといい生産性の上がる 支援を頼むと言っても 具体的な支援は無いしなぁ…… 大丈夫ではなかった 問題は多い... (c)crim 依頼や問い合わせが沢山 来るな… 困っているから優先度 上げざるを得ない……
  5. Developers Summit 2023 私たちの製品・組織の歴史(組織的負債) • 当時の最適解が時間の経過とともに最適ではなくなったもの ◦ 組織と担当業務の割り当てのミスマッチ ◦ 組織異動によって間に落ちていったタスク

    • 組織活動を円滑に行うための配慮や妥協の産物 ◦ やらないと困る人が出てくるので、ボランティアでやろう ◦ トラック係数が1のままのツール・業務 ◦ 納得感は無いが、大して負荷にならないし、まぁいいか • やっても変わらないだろうなという全体の士気低下 • 全体最適な根本的な解決がとれない 17
  6. Developers Summit 2023 歴史から学ぶ • 数年周期で繰り返される同じ取り組み • 機能制限の無償版を頑張って運用 ◦ サーバの調達は比較的行いやすい一方で新規の予算獲得のハードルは高い

    • ボランティアとしてやっており、負担だけが増える • 個人のスキルに頼り、組織として運用できるところまで仕組化できてない 18 私たちの製品・組織の歴史(組織的負債)
  7. Developers Summit 2023 改善の良いサイクルが回せなかった原因 • (ボランティアで行われているため)工数の勘定から漏れ、一向にコストをかけて 改善することができない • 振り返りや歴史の伝承がされず、同じ取り組みを再び行って失敗する •

    トップダウンで始まるが現場と距離感があり、成果とならずフェードアウト • 経営層の視座からは緊急度の高い問題に見えず、現場からも伝わる形で コミュニケーションがとれなかった • 予算確保までは手が出せないが、局所的な工数なら融通することならできる 19 私たちの製品・組織の歴史(組織的負債)
  8. Developers Summit 2023 私たちの製品・組織の歴史 会社と現場の状況 経営層 • 投資を行える状況であるが、人が足りない • ビジネス(キャッシュ)に目が向いている

    • 開発組織のスイートスポットとなる投資対象が把握できていない 現場 • 会社の状況が悪化しているときにお金を出してもらえなかった過去がある • 現場に改善を行っていくための余裕はない(木こりのジレンマ) • よりよいやり方で開発を行いたい 20
  9. Developers Summit 2023 私たちの製品・組織の歴史 会社と現場の状況 経営層 • 投資を行える状況であるが、人が足りない • ビジネス(キャッシュ)に目が向いている

    • 開発組織のスイートスポットとなる投資対象が把握できていない 現場 • 会社の状況が悪化しているときにお金を出してもらえなかった過去がある • 現場に改善を行っていくための余裕はない(木こりのジレンマ) • よりよいやり方で開発を行いたい 21 社員の開発者体験を向上することは モチべージョンに関わる重要な要素で あるが、投資対効果で話をしたい ビジネスであるからには投資対効果で話 せないといけないのはわかるが、 自分たちの開発者体験を向上させて 仕事をやりやすくしたい
  10. Developers Summit 2023 22 コードや足回りを改 善する時間がない 優先順位づけすれば 大丈夫だ、問題ない コード以外でも やることがたくさん

    コードが複雑で 修正・機能追加に 時間がかかる 私たちの製品・組織の歴史(技術的負債) 死 神は言っている、 ここで死ぬ運命ではないと―― 不具合 新機能開発案件 足回りや改善は後 回しにせざるを得 ないな…… 依頼や問い合わせが沢山 来るな… 困っているから優先度上 げざるを得ない…… もっといい生産性の上がる支援 を頼むと言っても具体的な支援 は無いしなぁ…… こんな装備では大丈夫ではないので、 2つの負債を返済していきながら、 もっといい Developer eXperience を実現する
  11. Developers Summit 2023 取り組みの変遷 2021年 2022年 少数の開発者に ヒアリング DX Criteria

    読み合わせ 有志 4名で活動 チーム化 7名で活動 組織化 20名+で活動 開発組織全体へ アンケート 分析・方針決定 複数の施策として 展開 24 会社レベルで ムーブメントの 広がり 個別での活動 短期的な施策
  12. Developers Summit 2023 DX Criteria で現在地を知る • 2021年4月にDX Criteriaが更新される •

    参画しているメンバー(現場サイドとマネジメントサイドの複合チーム) それぞれの視点でDX Criteriaを行い、各項目の解釈と社内の現状の認識を 合わせた • 社内と世の中の差を再確認 DX Criteria (v202104)/企業のデジタル化とソフトウェア活用のためのガイドライン https://dxcriteria.cto-a.org/ 30
  13. Developers Summit 2023 トップマネジメントと現場でゲームが違う 現場から上がってくる声を頼りに、自分たちの会社のリソースを配置して、 より会社を大きくしていくゲーム (ジャンル:拡大再生産) 自分たちの持っている資源を利用して、効率よく業務遂行をしていくゲーム (ジャンル:ワーカープレイスメント) →

    トップマネジメントを動かすということも選択肢の一つではあるが行動の 難易度が高い。大規模組織だと自分の所属する組織内の効率向上がゴールに なることが多く、トップマネジメントのゲームの考え方とミスマッチになる 32
  14. Developers Summit 2023 私たちの組織 2つのDX(Digital Transformation & Developer eXperience)を追求し続け 開発者がプロダクトに100%の力を注ぎ込め、その成果を正しく全社に伝えてい

    くことを推進し他部門と連携しながら、全社的問題解決に貢献する Mission 34 エンジニアの楽しさ加速中! 開発現場の大変革 に挑むWorks Human Intelligenceの未来像 https://compass.labbase.jp/articles/885
  15. Developers Summit 2023 私たちの組織 • Digital Tansformation ◦ 開発状況や商用運用に関わる様々なデータを自動収集し、 だれもが同じデータをリアルタイムに確認できるようにします

    • Developer Experience ◦ 開発者の声に耳を傾け、開発のストレスを低減し、開発が取り組みたい新たな施策を支援します • Cross Departmental ◦ 各製品部門に必須な組織(UI/UX・CI/CD)を支援し、部門横断的な平準化と効率化を推進します • Transparency and Accountability ◦ 組織の透明性を重視し、正確で公平な情報発信とアクセシビリティ向上によって、 説明責任を果たしやすい組織にします • Community ◦ 社内コミュニティを推奨することで、自己研鑽と自己認知の機会をつくり、 個人が会社をたのしむことを応援します Vision 35
  16. Developers Summit 2023 取り組みの紹介 • 開発案件管理 ◦ 今まで ▪ 半年スパンで計画。優先順位を決めていないため、変化に対応することが難しい

    ◦ 改善後 ▪ 事前に優先度を決め、達成すべきものと調整可能なものを定義することで、認識を 合わせて進められるようにする ▪ 改善を行うための工数を固定で確保する ▪ これらの情報がだれでも閲覧できるようにする 45
  17. Developers Summit 2023 取り組みの紹介 • 組織編成 ◦ 今まで ▪ 製品開発に必要な役割や権限が各組織に足りていない

    ◦ 改善後 ▪ ボランティアとならないように必要な役割を持った組織の箱を用意する ▪ まだ兼務が多い状況だが、箱を作ることで、工数を測定できるようになる ▪ 業務量を計測し、見えてきたら専任をつけていく 46
  18. Developers Summit 2023 取り組みの紹介 • 開発システム投資 ◦ 今まで ▪ 開発に利用するシステムが時間を経ることにより、現状に即さなくなっており、思考や

    作業が中断される ▪ 生産性の高い SaaS を利用できていない ◦ 改善後 ▪ 貸与しているPCのスペックの見直し • 32GB、CPUスコア10000以上のノートPC • 総務と連携し、フリーアドレス化 ▪ GitHubの利用拡大 ▪ SonarQubeの導入 47
  19. Developers Summit 2023 取り組みの紹介 • チケット管理システム ◦ 今まで ▪ さまざまな業務が依存し、時間を経て非効率になっていても見直しがされていない

    ◦ 改善後 ▪ SaaS を導入し、業務を標準化する → 依存関係といったブロッカーが多く、失敗しました。。。小さく導入を始めて、 被害を小さくできるように進められるようにする学びを得ました ▪ 業務やチケットに記載する項目を棚卸し、開発者にとって不要な項目を削除 48
  20. Developers Summit 2023 取り組みの紹介 • 教育 ◦ 新人・中途研修の改善 ◦ 書籍購入補助・資格取得補助

    • リリース速度改善 ◦ 自動テスト ◦ CICDの改善 • サポートバージョン削減 • 開発に関わるメトリクスの取得 49 クエスト形式で学習! 能動的なエンジニアが育つ Works Human Intelligenceの新人研修の秘密 https://compass.labbase.jp/articles/892
  21. Developers Summit 2023 現場と経営をつなぐ デファクトスタンダードなツールを導入します。 今までは出来なかった xxx ができるようになってい てとても便利です!いつでも使えるようにしておく ので使ってみてください!(開発者体験軸)

    移行の時のサポートもアイデアがあります。具体的 なところを一緒に話して進めていきましょう! GitHubを導入することで、各部署が運用している VCSを統一して全体最適が図れます。 生産性や採用、ロイヤリティ向上にも寄与します。移 行コストよりその後のメリットが大きいのでやらない 理由がないです。(開発生産性軸) 52 動かしたい人によって響く説明は違う
  22. Developers Summit 2023 現場と経営をつなぐ デファクトスタンダードなツールを導入します。 今までは出来なかった xxx ができるようになってい てとても便利です!いつでも使えるようにしておく ので使ってみてください!(開発者体験軸)

    移行の時のサポートもアイデアがあります。具体的 なところを一緒に話して進めていきましょう! 是非ともやりたい! 興味ありだけど、工数が 厳しいので様子見... 個人的には良いと思うけど、 この理由ではうちの現場は動いて くれないな。 53 GitHubを導入することで、各部署が運用している VCSを統一して全体最適が図れます。 生産性や採用、ロイヤリティ向上にも寄与します。 移行コストよりその後のメリットが大きいのでや らない理由がないです。(開発生産性軸) 現場組織によって優先度が違う
  23. Developers Summit 2023 現場と経営をつなぐ • 無理に進めない ◦ 現場が必要だと感じた時にサポートできるように準備する ◦ (動かしたい方向に行かざるを得ない行きたくなるような力学を働かせる)

    • 自分たちも一緒に手を動かす • 一定期間ごとにメリットが感じられるようにして、状況を可視化する ◦ 経営層と現場に対して定期的な状況報告 ◦ slack のパブリックチャンネル、ナレッジの蓄積、議事録 • 時間が経つと外部環境が変わり、現場の各チームの意思決定も変わってくる 書籍「FEARLESS CHANGE」はとても参考になりました 54
  24. Developers Summit 2023 リスクアセスメント、稟議はんこリレー • セキュリティ関係の対応 ◦ 承認対象が組織全体となると、承認の難易度が上がる ◦ 情報セキュリティ委員会やPSIRT/CSIRTは「負かして突破する相手」ではなく、

    「一緒に環境を良くしていこうとする協力者」 ◦ 会社の基準が守れるように設定したもので、いわばガードレール付きの整備された道 ◦ メリットを享受する人からは見えない準備に時間がかかる(リスクアセスメントと対策) • 稟議周り ◦ 会社間の取引なので、信用調査や財務・法務チェックが入る ◦ リードタイムがあるので、クリティカルパスを意識して進める • 海外拠点の営業とのやり取り ◦ 時差・言語・カルチャーの壁 55
  25. Developers Summit 2023 まとめ • トップダウンで進めるのではなく、現場開発者と一緒に進めていく ◦ そのために一緒に手を動かす • 無理に現場開発者を巻き込まない

    ◦ やりたい/やったほうがメリットがあると思ってもらう • 手続き ◦ 担当領域のプロなので、勇気をもって積極的に相談する ◦ 会社を良くしたいというゴールは同じなので協力してくれる • 経営層とのやりとり ◦ 現場と比較して、戦っている領域が違うので、言葉を合わせる ◦ お金をどこに投資したら良いのかを伝え、勝てそうだと思ってもらう 58