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
開発生産性 超入門 / development productivity introduction
Search
sora_ichigo
May 31, 2024
Technology
11
4.4k
開発生産性 超入門 / development productivity introduction
CTOA若手エンジニアコミュニティ勉強会 #5 の発表資料です。
https://ctoa-wakate.connpass.com/event/318007/
sora_ichigo
May 31, 2024
Tweet
Share
More Decks by sora_ichigo
See All by sora_ichigo
プロジェクトマネジメントにおいてチームメンバーが貢献できること / Team Contribution in Projects
igsr5
2
97
PRマージのあらゆるブロッキングを回避する技術 / trunk-based development tips
igsr5
6
770
Shopify/ruby-lsp で快適な Ruby 生活を始めよう / introduction-shopify-ruby-lsp
igsr5
2
3k
ユビキタス言語はバックエンドエンジニアから始めよう
igsr5
5
1.4k
テストコードを負債化させない上手な付き合い方 / Test Code Management
igsr5
15
4.3k
テストカバレッジを 100%にするということ / Achieving 100% Test
igsr5
0
2.5k
DevOps の社内浸透を目指してチームを立ち上げた話 / DevOps Guild
igsr5
0
2.9k
プロジェクトマネジメント観点でポストモーテムを実施する
igsr5
0
2.6k
テスト文化の成熟:自動テストが浸透した組織が次に目指すべきステップ
igsr5
4
3.2k
Other Decks in Technology
See All in Technology
10XにおけるData Contractの導入について: Data Contract事例共有会
10xinc
5
580
社内で最大の技術的負債のリファクタリングに取り組んだお話し
kidooonn
1
550
Making your applications cross-environment - OSCG 2024 NA
salaboy
0
180
Terraform未経験の御様に対してどの ように導⼊を進めていったか
tkikuchi
2
430
Exadata Database Service on Dedicated Infrastructure(ExaDB-D) UI スクリーン・キャプチャ集
oracle4engineer
PRO
2
3.2k
Application Development WG Intro at AppDeveloperCon
salaboy
0
180
20241120_JAWS_東京_ランチタイムLT#17_AWS認定全冠の先へ
tsumita
2
240
SSMRunbook作成の勘所_20241120
koichiotomo
2
120
rootlessコンテナのすゝめ - 研究室サーバーでもできる安全なコンテナ管理
kitsuya0828
3
380
AGIについてChatGPTに聞いてみた
blueb
0
130
VideoMamba: State Space Model for Efficient Video Understanding
chou500
0
190
[FOSS4G 2019 Niigata] AIによる効率的危険斜面抽出システムの開発について
nssv
0
310
Featured
See All Featured
The Cost Of JavaScript in 2023
addyosmani
45
6.7k
Build your cross-platform service in a week with App Engine
jlugia
229
18k
Designing for Performance
lara
604
68k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
27
840
Typedesign – Prime Four
hannesfritz
40
2.4k
Bash Introduction
62gerente
608
210k
Embracing the Ebb and Flow
colly
84
4.5k
StorybookのUI Testing Handbookを読んだ
zakiyama
27
5.3k
A Modern Web Designer's Workflow
chriscoyier
693
190k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
229
52k
VelocityConf: Rendering Performance Case Studies
addyosmani
325
24k
Java REST API Framework Comparison - PWX 2021
mraible
PRO
28
8.2k
Transcript
© 2024 Wantedly, Inc. 開発⽣産性 超⼊⾨ CTOA若⼿エンジニアコミュニティ勉強会 #5 May 31
2024 - Sora Ichigo
© 2024 Wantedly, Inc. ⾃⼰紹介 名前 市古 空 (Sora Ichigo)
所属 • ウォンテッドリー株式会社 • バックエンドエンジニア • DevOps 推進チームリード SNS • X: @igsr5_
© 2024 Wantedly, Inc. Business Wantedly Visit iOS, Android and
Web 気軽に会社訪問 ミッションや価値観への共感でマッチング • 給与や福利厚⽣などの条件ではなく、想いがあれば会社 の規模にとらわれない まず「話を聞きに⾏く」という新しい体験 • 個⼈と企業がフラットな⽬線で出会えることで、より魅 ⼒的な場所を⾒つけることが可能に
© 2024 Wantedly, Inc. Business Engagement Perk, Pulse, Story ⾃律型組織づくりをサポート
3つのプロダクトから構成 • 仕事に夢中になり最⾼のパフォーマンスを発揮するために 必要な環境づくりを後押し リモートワークの課題にも • 会社との⼼理的距離の拡⼤によるモチベーションの低下を 防ぎ、退職リスクの増⼤など組織課題を解決
© 2024 Wantedly, Inc. Business Engagement - Perk(パーク) 福利厚⽣ 仕事環境を整える話題のサービスを
提供する「福利厚⽣」 • ⼀⼈ひとりの快適な挑戦を⽀えるサービスを特別価格で提供し、福 利厚⽣の充実を⼿軽に実現 • 特典掲載数 1,000サービス以上
© 2024 Wantedly, Inc. Business Engagement - Story(ストーリー) 社内報 メンバー間で⽬的意識と⼀体感を
共有するオンラインの「社内報」 • ⾯と向かって想いを伝えることが難しい環境においても、 会社のビジョンやバリューの浸透を⽀援
© 2024 Wantedly, Inc. Business Engagement - Pulse(パルス) チームマネジメント チームメンバーの現状把握と
改善を⽀援「チームの状態」 • Slackを通じてチームの価値観を浸透させ、 メンバーの抱える課題や隠れた貢献を可視化
© 2024 Wantedly, Inc. 今⽇話すこと 1. ⼤前提: プロダクト開発とは 2. 開発⽣産性とは
3. 開発⽣産性を上げる 4. ウォンテッドリー事例
© 2024 Wantedly, Inc. ⽬標 開発⽣産性の基本を why から理解する 具体的なプラクティス
抽象的な理論 このスライドを読めば開発⽣産性の全てがわかる このスライドを読めば開発⽣産性の基本がわかる
© 2024 Wantedly, Inc. ⼤前提: プロダクト開発とは
© 2024 Wantedly, Inc. 我々は⽇々、プロダクトに変更を加えている プロダクトの変更とは「仮説」 仮説: この変更を加えればユーザーに価値が届くはず ウォンテッドリー社内 issue
テンプレート プロダクトに適⽤
© 2024 Wantedly, Inc. なんで仮説が重要? 不確実性が⾼く、予測可能性が低い 原因と結果の因果関係が、後になって分かる領域。 その因果関係を⾒出すために、失敗しても影響が⼩さい実験を繰り返し、そこから成功パ ターンを⾒つけ出す。 可能性を論じることはできるが、
めくってみないと分からない
© 2024 Wantedly, Inc. つまりプロダクト開発とは 継続的な仮説検証サイクル
© 2024 Wantedly, Inc. 重要なこと 周囲より早く、顧客が本当に欲しいものを⾒つけ提供する 多くのプロダクトが溢れる時代におけて⾮常に⼤切 「最短距離の最⼤社会的インパクト」 ウォンテッドリーの⾏動指針の⼀つ。 Wantedly,
Inc.の事業とカルチャー - Wantedly
© 2024 Wantedly, Inc. 開発⽣産性とは
© 2024 Wantedly, Inc. 開発⽣産性とは 定義は様々。視点によって変わる。 例. 経営‧財務 視点 現場
視点 アウトプット効率 アウトプット = ⼈数規模 (インプット) x ⽣産性 (係数) 開発者体験 (アクティビティ) ある作業にかかる時間、ストレス度合い...etc
© 2024 Wantedly, Inc. 開発⽣産性の定義は重要ではない 各視点の利害を統合する 正確な定義よりも、全体最適にアクティビティ改善→アウトカム最⼤化を⽬指す動きが重要 当たり前じゃん!と思うけど、1つのデリバリーには多くの職種が関わっている。 局所最適の罠は意外と多い。
© 2024 Wantedly, Inc. 余談) 誤解されがちな DevOps 「各視点の利害を統合する」がまさに DevOps の関⼼
DevOps は単なる⾃動化やプロセス効率化を指す⾔葉ではない。 黎明期は Development (開発) と Operations (運⽤) の対⽴を無くすことが⽬的だったが、 現代ではあらゆる部署の利害を統合して組織全体のパフォーマンスを⾼めるムーブメントと して発展している。 DORA | Get Better at Getting Better
© 2024 Wantedly, Inc. 開発⽣産性を上げる
© 2024 Wantedly, Inc. 開発⽣産性を上げるとは アクティビティ改善→アウトカム最⼤化を⽬指すこと 再掲 p.12
© 2024 Wantedly, Inc. アウトカムとアクティビティの関係性 仮説検証のスピード 仮説検証の回数 仮説検証の質 プロダクト価値 アウトカム
アクティビティ
© 2024 Wantedly, Inc. KPI に落とし込んで考えてみると 仮説検証のスピード 施策あたりのリードタイム 仮説検証の回数 ⽉当たりの施策リリース数
仮説検証の質 ⽉当たりの本機能化率
© 2024 Wantedly, Inc. 開発⽣産性を上げる 2 種類の⽅法 「改善」と「改⾰」
© 2024 Wantedly, Inc. 改善 現状をよりうまく回すための改善 連続的な成⻑。地道な改善を積み重ねることが多い。 例. ストリームアラインドチームの施策リードタイム短縮
© 2024 Wantedly, Inc. 改善モデル 「把握→分析→対応」のサイクル クネビンフレームワークの「Complicated / 込み⼊った状況にある領域」 sense
analyze respond
© 2024 Wantedly, Inc. 改⾰ 理想を実現するための改⾰ ⾮連続的な成⻑。⼤きな障壁があることが多い。 例. • モバイルアプリ開発には時間がかかるからクイックな仮説検証には向いていない
• => モバイルアプリ開発が爆速になれば新しい仮説検証スタイルになるのでは?
© 2024 Wantedly, Inc. 「改⾰」でプロダクト‧事業に⼤きな変化を⽣む プロセス的な制約を取っ払った新しい仮説検証スタイル
© 2024 Wantedly, Inc. 「改⾰」でプロダクト‧事業に⼤きな変化を⽣む ⼤きな現状課題はなんですか? 事業フェーズや外部環境など、要因はさまざま ⾮連続的な成⻑を実現する伸び代はありますか? プロセス的な制約によって実現されていない仮説検証スタイル
© 2024 Wantedly, Inc. ウォンテッドリーの「改善」事例
© 2024 Wantedly, Inc. 実際に改善モデルを回した事例を紹介します 再掲 p.25
© 2024 Wantedly, Inc. ① 把握: 施策の可視化 まずは施策のリードタイム‧並⾏数を可視化してみる
© 2024 Wantedly, Inc. ① 把握: 施策の可視化 リードタイムは短縮傾向にあるが、まだまだ伸び代もある 2週間にしたいですね
© 2024 Wantedly, Inc. ② 分析 全ての施策が 2 週間で終わったと仮定すると...?
© 2024 Wantedly, Inc. ② 分析 全ての施策が 2 週間で終わったと仮定すると...? •
Q あたりにリリースできる施策数は 4 つ増える! • 同時並⾏する施策数を 3~4 つ → 2 つまで減らせる!
© 2024 Wantedly, Inc. ③ 対応 ⽬標設定「施策のリードタイム 2 週間」 伸び代を探るため、さらに個々の施策ごとに「把握‧分析」を進める
• 施策リードタイムの内訳分析 • 上⼿くリリースできた施策‧時間がかかった施策の⽐較
© 2024 Wantedly, Inc. ③ 対応 Daily Sync Up のフォーマット改善
MTG の⽬的を再確認。個⼈単位の共有 → 施策単位の共有へ。 仕様議論の進め⽅改善 1 トピックあたりのラリー数を減らして複雑性を減らす。 仕様を議論する順番を最適化する。 ペアプロ‧モブプロの推進 軽量なレビュープロセス。知⾒の伝搬。 実際にあった改善例
© 2024 Wantedly, Inc. 他にも 施策だけでなく、変更単位の数字も活⽤ ※1つの施策は複数回の⼩さな変更を経てリリースされます 右グラフは 変更のリードタイム (h)
© 2024 Wantedly, Inc. 他にも よく改善の参考にするモデル DevOps Capabilities
© 2024 Wantedly, Inc. まとめ
© 2024 Wantedly, Inc. まとめ • プロダクト開発とは「継続的な仮説検証サイクル」p. 10 • 周囲より早く、顧客が本当に欲しいものを⾒つけ提供することが重要
◦ ≒ 開発⽣産性の重要性 • 開発⽣産性の定義はさほど重要ではない (視点によりけり) p.15 • 真に重要なのは「各視点の利害を統合すること」p.16 ◦ = DevOps ◦ 特にアクティビティとアウトカムを統合して考えるべし • 開発⽣産性の取り組みでは「改善」と「改⾰」の2⾯性を意識する p. 19