Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
結局は、人 / In the end, people value
Search
Masato Ishigaki / 石垣雅人
February 09, 2023
Technology
11
4.9k
結局は、人 / In the end, people value
2023/2/9 Developers Summit 2023 登壇資料
Masato Ishigaki / 石垣雅人
February 09, 2023
Tweet
Share
More Decks by Masato Ishigaki / 石垣雅人
See All by Masato Ishigaki / 石垣雅人
【5分】始める前に失敗する ── fail fast(早く失敗)ではなくfail before(事前検死) ──
i35_267
1
34
技術負債による事業の失敗はなぜ起こるのか / Why do business failures due to technical debt occur?
i35_267
4
1.9k
「開発生産性を上げる改善」って儲かるの?に答えられるようにする / Is development productivity profitable?
i35_267
28
19k
「開発生産性」はエンジニア”だけ” のモノではなくなった? / "Development productivity" is no longer just for engineers?
i35_267
8
2.6k
開発生産性の現在地点~エンジニアリングが及ぼす多角的視点 / Current status of development productivity
i35_267
68
25k
開発生産性の低下による、事業の失敗はなぜ起こるのか / ProductivityPitfalls
i35_267
6
1.5k
開発生産性の多角的接点〜1,000名のクリエイター組織 × 開発生産性〜 / Multifaceted touchpoints of development productivity
i35_267
5
1.6k
内製化で強化させる、事業のスケーラビリティーとエンジニアの成長戦略 / insourcing
i35_267
2
370
見積もりをしない。
i35_267
4
1.2k
Other Decks in Technology
See All in Technology
20241214_WACATE2024冬_テスト設計技法をチョット俯瞰してみよう
kzsuzuki
3
450
フロントエンド設計にモブ設計を導入してみた / 20241212_cloudsign_TechFrontMeetup
bengo4com
0
1.9k
サービスでLLMを採用したばっかりに振り回され続けたこの一年のあれやこれや
segavvy
2
410
継続的にアウトカムを生み出し ビジネスにつなげる、 戦略と運営に対するタイミーのQUEST(探求)
zigorou
0
530
Wantedly での Datadog 活用事例
bgpat
1
440
生成AIをより賢く エンジニアのための RAG入門 - Oracle AI Jam Session #20
kutsushitaneko
4
220
GitHub Copilot のテクニック集/GitHub Copilot Techniques
rayuron
27
12k
成果を出しながら成長する、アウトプット駆動のキャッチアップ術 / Output-driven catch-up techniques to grow while producing results
aiandrox
0
280
1等無人航空機操縦士一発試験 合格までの道のり ドローンミートアップ@大阪 2024/12/18
excdinc
0
150
複雑性の高いオブジェクト編集に向き合う: プラガブルなReactフォーム設計
righttouch
PRO
0
110
LINE Developersプロダクト(LIFF/LINE Login)におけるフロントエンド開発
lycorptech_jp
PRO
0
120
10分で学ぶKubernetesコンテナセキュリティ/10min-k8s-container-sec
mochizuki875
3
330
Featured
See All Featured
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
226
22k
How to Ace a Technical Interview
jacobian
276
23k
The Invisible Side of Design
smashingmag
298
50k
Unsuck your backbone
ammeep
669
57k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
330
21k
Building Adaptive Systems
keathley
38
2.3k
Build your cross-platform service in a week with App Engine
jlugia
229
18k
Product Roadmaps are Hard
iamctodd
PRO
49
11k
Faster Mobile Websites
deanohume
305
30k
Side Projects
sachag
452
42k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
169
50k
Speed Design
sergeychernyshev
25
670
Transcript
結局は、人 Developers Summit 2023 1 Masato Ishigaki February 9, 2023
2 About me 石垣 雅人 DMM.com PF事業本部 第1開発部 部長 /
VPoE室 / α室 ・エンジニア 新卒入社 ・著 : 『DMMを支えるデータ駆動戦略』(マイナビ出版,2020) ・連携 : 『スモールチームが武器になる時代へ』(ProductZine) @i35_267 @i35_267 @i35_267
3 Outline
4 - Target - プロジェクトマネージャー / プロダクトマネージャー / クリエイター -
Outline - 問題提起 - プロジェクトの失敗率は、69% - 「人」に纏わるプロジェクトの失敗あるある - アプローチ - 集合知 / Swarmingを意識する - 事例 - “Disagree & Commit”の精神 - チームの”存在価値”を振り返る - 1 : n と 1 : 1 Outline
5 - Outline - 問題提起 - プロジェクトの失敗率は、69% - 「人」に纏わるプロジェクトの失敗あるある -
アプローチ - 集合知 / Swarmingを意識する - 事例 - “Disagree & Commit”の精神 - チームの”存在価値”を振り返る - 1 : n と 1 : 1 Outline
6 プロジェクトの失敗率は、約69% 「工期」「予算」「品質」の3つのカテゴリーで分け、 プロジェクト規模を「100人月未満」「100〜500 人月未満」「500人月以上」で分類したデータ 引用 : 図表 7-3-1 プロジェクト規模別・年度別
システム開発の工期遵守状況 (https://juas.or.jp/cms/media/2022/04/JUAS_IT2022.pdf) 工数 : 34.4% 予算 : 37.0% 品質 : 23.0% 3つの割合の平均 = 31%前後になります。何かしらの原因で満足いかない可能性が 約69% さらに、工数・予算・品質のすべてが予定通りに終わる確率は、工期(34.4%)× 予算(37.0%)× 品質(23.0%)で 約3%
7 引用 : 図表 7-3-4 予定どおりにならなかった要因(複数回 答)(https://juas.or.jp/cms/media/2022/04/JUAS_IT2022.pdf) プロジェクトの失敗率は、約69% [仮説] 人・チームのあり方の
影響度が大きい
8 - Outline - 問題提起 - プロジェクトの失敗率は、69% - 「人」に纏わるプロジェクトの失敗あるある -
アプローチ - 集合知 / Swarmingを意識する - 事例 - “Disagree & Commit”の精神 - チームの”存在価値”を振り返る - 1 : n と 1 : 1 Outline
9 「人」に纏わるプロジェクトの失敗あるある 1. ブリリアントジャークの存在 - 優秀だけど、協調性を乱す人 - 「腐ったリンゴの実験」by オーストラリア -
性格が悪い人 - 怠け者 - 周りを暗くする人 - といった特性をもつ人をチームに投入 - 結果として、攻撃的な人が1人入っただけで、チームの生産性は30〜 40パーセント低下する - 特にリーダー層が当てはまるとプレゼンスに大きな影響力を与える - 受け入れる側の問題もあり
2. ホフスタッターの法則 - 「もうすぐできる」はだいたいウソ - 作業にはいつでも予測以上の時間がかかるものである - 「明日か、明後日には終わります」っていうのは、大抵明 後日になりますね -
それによってスケジュールが後ろへ - = 不確実性の誤認。信頼度の未達。 3. パーキンソンの法則 - 「仕事の量は、完成のために与えられた時間をすべて満た すまで膨張する」 - スケジュールを伸ばしても伸ばしても、結局ぎりぎりに ローンチすることになる - = スコープクリープ問題 - 技術負債とリファクタリング 「人」に纏わるプロジェクトの失敗あるある 10
11 4. ブルックスの法則 - 遅れているプロジェクトに要因追加してもさらに遅れる - 新しい人員へのオンボーディングコスト - または、オンボーディングコストを避けないことからくる 生産性の悪化
- = マネージャーからチームへの信頼度の未達 「人」に纏わるプロジェクトの失敗あるある さまざまな要因・法則はあるにしろ、 根底の部分では人と人との関わり合いの中が生まれる問題だと思っている → 人と人との関わり合い = 集合知を知ることでアプローチしてみる
- Outline - 問題提起 - プロジェクトの失敗率は、69% - 「人」に纏わるプロジェクトの失敗あるある - アプローチ
- 集合知 / Swarmingを意識する - 事例 - “Disagree & Commit”の精神 - チームの”存在価値”を振り返る - 1 : n と 1 : 1 Outline 12
Photo by David Clode on Unsplash 13 “群れ” として捉える =
Swarming
“群れ” として捉える - 私たちは、”群れながら” 開発をしている - 個人では限界があるため、人は複数人で作業をしてスケールさせている。 チーム開発が良い例 - なぜか。不確実性が高い事業環境下、予算が尽きる前にできるだけ早く市
場へ投入して、イテレーティブな仮説検証を経て稼がなければ、事業が死 んでしまう。 - 一方、自分たちを “群れている” と認識することは少ない - 色々な「個」と「個」の集まりがチームだとすると、個のメンタルモデル から来る “群れ方” は違う。私たちがチーム開発する上での問題(出来事) は、”群れ方”の構造と行動パターンに起因する - 氷山モデルを例とすると、そのチーム特有のメンタルモデル -> 構造 -> 行 動パターンがあって、はじめて出来事(事象)がある。 - 群れ方は、そこにいる人・構造・環境によって変わってくる Photo by Amir on Unsplash 14
15 群知能(Swarm Intelligence) Photo by Johnny Chen on Unsplash -
なぜ、動物(鳥や魚)は統率された行動ができるのか。 - 群れ = 自己組織化している(無意識に自律的な秩序を持つ) - 秩序の例。魚の大群。複雑系に見えて実はとてもシンプルな論理 - 1. 前の個体を追うこと - 2. 横の個体と速度を合わせること - 秩序の例。アリの群衆は、どうやって最短ルートで餌場にたどり 着くのか。なぜアリの集団は、遅いルートを選ばないのか - マーキングによる行動の観察
16 なぜ、群れているのか理解する Photo by David Clode on Unsplash - なぜ、私たちは群れているのか
- 生物学的に見ても、強い敵や難しい課題が目の前に現れたとき単独で行動する よりも、統一された集団行動によって、1対1では敵わない敵に勝てるかもし れないということを本能的に知っている。いわゆる、恐怖。 - どうやったら強い敵に勝てるかをフィードバックをもとに徐々に学習して理解 していく。 - 群れている状態とは何か - “群れる"の本質は、何かの対象に対して集団が相互作用しながらも自然と同じ 方向を向いて、前に進んでいるということであり、個々がそのメリットを体系 的に理解していること。 - 本能的に「ひとりで進むよりも皆と協力して"群れ"ながら進んだ方が良い結果 を生む」と判断できることである。
17 チーム開発でいう “群れる” とは Photo by Hugo Rocha on Unsplash
- チームは、”群れながら” 作ることを前提にしている - アジャイルには “Swarming” という概念がある。 - ProductBacklog(作るべき対象)に対して、チームメンバーが “群がり” な がら、一定の秩序をもち(イベント)優先度順にゴールに向けて作り上げてい く。 - “群れ” = 自律的な秩序をもった自己組織化された集団でなければいけない。 そうでなければ破綻する(うまくいかない)し、コミュニケーションはうまく いかない。逆に群れて作らなければ、それはアジャイルではない。 - “群がる” 粒度を考える - アイテム単位でペアプロ / モブプロするのが良いのか、SprintBacklog単位で 群がって作るのかは、組織 = 個と個、環境によって変えていく必要がある。 - 可観測性を高めながら、観測していく。
タックマンモデルのフェーズを意識する 形成期 (forming) 混乱期 (stoming) 統一期 (norming) 機能期 (performing) t
成熟度 探り合い 混乱 役割 自己組織化 必ず、ここからスタート→ 18 それぞれに理想のチームは違う パターン・ランゲージが必要
19 集合知(Swarming)や組織フェーズを意識しやすくするアプローチの 勘所3つ紹介 • 意識 : “Disagree & Commit”の精神 •
定期 : チームの”存在価値”を振り返る • 運用 : 1:nと1:1
- Outline - 問題提起 - プロジェクトの失敗率は、69% - 「人」に纏わるプロジェクトの失敗あるある - アプローチ
- 集合知 / Swarmingを意識する - 事例 - “Disagree & Commit”の精神 - チームの”存在価値”を振り返る - 1 : n と 1 : 1 Outline 20
21 “Disagree and commit”の精神 ベースのメンタルは、”Disagree and Commit”で行う ==== 「私はある部下に事態を私の見方で見るようにと一生懸命説得を試みた。彼は容易に同調しようとしなかった。 そして最後にこう言った。「グローブさん、私を説得しようとしても無理ですよ。
それよりも、どうして私を説き伏せようと意地を張るんですか。私はすでにあなたの言うとおりにしますと答えているんですから」。私は黙ってし まった。困惑した。なぜだかわからなかった。ずいぶん時間が経ってからわかったのだが、私が言い張ったのは事業の運営にほとんど無関係の ことで、単に自分の気分を良くするためだった。それだからこそ困惑したのである。」(p284) 「複雑な問題では容易に全面的な一致を見ることなどない。部下が自体を変えることを約束するなら、真面目に取り組んでいると考えるべきであ る。ここで重要な言葉は“呑める”ということばである。(中略)仕事上の必要と気持ちの安らぎとを混合すべきではない。事態を動かすのに、部下 はあなたの側に立つ必要はない。あなたとしては、決められた行動のコースを追いかけると部下に約束させる必要があるだけだ。」(p283) 引用 : https://www.amazon.co.jp/review/R38KB2KFTPB457
22 チームの”存在価値”をふりかえる - プロジェクトではなく、チームの”存在価値”を振り返る - チームに対する認識と期待値をすり合わせる - Q. タックマンモデルでいうと今はどこだと思うか? -
Q. このチームに対して期待していることは何? - Q. 良いエンジニアの定義ってどんな人? - タックマンモデルでいう「機能期」はチームごとに違う - 期待値・価値観の共有を行い、認知とすり合わせを行う
23 チームの”存在価値”をふりかえる Q. タックマンモデルでいうと今はどこだと思うか? 形成期 (forming) 混乱期 (stoming) 統一期 (norming)
機能期 (performing) 実際の意見 - (機能期)完全な機能期ではないが、主語がチームやユーザー、プロダクトになっているのが良い。完全ではないが、エンジニアリン グとしては機能期。 - (統一期)まだ、個人としてもリーダーに完全に頼ってしまっている部分がある。役割がふあふあしている。 認識のズレやメンバーの考え方を 知ることができる
24 チームの”存在価値”をふりかえる Q. このチームに期待していることはなに? - テックリードになりたい。 - スキルを上げながらも採用プロセスにも関わっていきたい
実際の意見 - チームの仕事を回したい。チームをグロースさせていきたい - 再現性に強い組織、不確実性に強い組織を作っていきたい - 設計にこだわりたい。
25 チームの”存在価値”をふりかえる Q. 良いエンジニアの定義ってどういう人? 実際の意見 - ちゃんと話しを聞ける人(妥協しない) - 突っ走んない人(妥協しない) -
SNS・社内SNSに悪口を書かない人(妥協しない) - スキル的に向上心、成長率が高い人(妥協しない) - チーム開発が向いている人(妥協しない) - 問題を問題だと言える人 - プロダクト目線を持っている人 - 問題解決力が高い - 設計のサボらない人 - 自分が持っている意見を言える人 - 世の中のセオリーを含めてこういう風に寄せていくと良いというのが言える人 チームですり合わせることで、自分はそうならないようになる チームのカルチャードックになるので採用プロセスにも使える
26 チームの”存在価値”をふりかえる 3つのQで、理想のチームを理解していく - Q. タックマンモデルでいうと今はどこだと思うか? - → 現在地点の確認 -
Q. このチームに対して期待していることは何? - → 期待値の確認 - Q. 良いエンジニアの定義ってどんな人? - → 価値観の確認
1 : n と 1 : 1 1 : n
はキックオフでしかない 文化形成は、愚直に1 : 1で伝える 27
- Target - プロジェクトマネージャー / プロダクトマネージャー / クリエイター - Outline
- 問題提起 - プロジェクトの失敗率は、69% - 「人」に纏わるプロジェクトの失敗あるある - アプローチ - 集合知 / Swarmingを意識する - 事例 - “Disagree & Commit”の精神 - チームの”存在価値”を振り返る - 1 : n と 1 : 1 Outline 28