Upgrade to PRO for Only $50/Year—Limited-Time Offer! 🔥
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
プロジェクト新規参入者のリードタイム短縮の観点から見る、品質の高いコードとアーキテクチ...
Search
akkino/D-En
October 26, 2024
Programming
1
1.2k
プロジェクト新規参入者のリードタイム短縮の観点から見る、品質の高いコードとアーキテクチャを保つメリット
JJUG CCC 2024 Fall
https://ccc2024fall.java-users.jp/
akkino/D-En
October 26, 2024
Tweet
Share
More Decks by akkino/D-En
See All by akkino/D-En
チームでDDDを実践するためのことはじめ
d_endo
0
700
経験学習型キャリア探索法 ~ふりかえりで始めるキャリアパスの見つけ方~
d_endo
2
1.2k
負荷試験の観点から見るGraphQLにおけるPHPのコードチューニング
d_endo
1
2.5k
Step Functions Expressで作るフルマネージドなサーバーレスバッチ
d_endo
1
2.4k
AWS認定資格のススメ
d_endo
1
440
Laravel + Lighthouseで始める低コストなGraphQL入門
d_endo
4
3.9k
30分でOpenID Connect完全に理解したと言えるようになる勉強会
d_endo
47
28k
今だからこそ考える「科学技術の倫理学」
d_endo
2
1.3k
アホで乗り越える失敗との付き合い方
d_endo
2
1.4k
Other Decks in Programming
See All in Programming
我々のデザインシステムは Chakra v3 にアップデートします
shunya078
2
2.6k
かんたんデザイン編集やってみた~「完全に理解した」までの道のり~
morit4ryo
1
110
HTTP compression in PHP and Symfony apps
dunglas
2
950
Laravel や Symfony で手っ取り早く OpenAPI のドキュメントを作成する
azuki
2
150
CSC305 Lecture 23
javiergs
PRO
0
110
Contemporary Test Cases
maaretp
0
160
Creating a Free Video Ad Network on the Edge
mizoguchicoji
0
150
Remix on Hono on Cloudflare Workers
yusukebe
1
390
ペアーズにおけるAmazon Bedrockを⽤いた障害対応⽀援 ⽣成AIツールの導⼊事例 @ 20241115配信AWSウェビナー登壇
fukubaka0825
6
2.3k
as(型アサーション)を書く前にできること
marokanatani
10
3k
カンファレンスでLTしました / kashiwarb5
nhayato
0
100
DevFest Tokyo 2025 - Flutter のアプリアーキテクチャ現在地点
wasabeef
2
220
Featured
See All Featured
GraphQLとの向き合い方2022年版
quramy
44
13k
Statistics for Hackers
jakevdp
796
220k
How STYLIGHT went responsive
nonsquared
95
5.2k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
126
18k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
191
16k
Being A Developer After 40
akosma
87
590k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
33
1.9k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
59k
Designing Experiences People Love
moore
138
23k
Teambox: Starting and Learning
jrom
133
8.8k
Building Your Own Lightsaber
phodgson
103
6.1k
Adopting Sorbet at Scale
ufuk
73
9.1k
Transcript
© 2024 Loglass Inc. 2024.10.27 株式会社ログラス 遠藤大輔 プロジェクト新規参入者の リードタイム短縮の観点から見る、 品質の高いコードとアーキテクチャを保つメリット
1
© 2024 Loglass Inc. プロフィール 遠藤 大輔 株式会社ログラス プロダクト開発部 エンジニア
株式会社ゆめみでエンジニア、アーキテクトとして開発に携 わったのち、2024年6月に株式会社ログラスへ入社。 インポート領域を中心にフィーチャーチームのエンジニアとし てプロダクト開発に従事している。最近は組織的に導入され たアジャイルフレームワークのFASTにおいてスロット(チー ム)をリード中。 Daisuke Endo 2
© 2024 Loglass Inc. 本日のアジェンダ 1. 新規参入者のリードタイムの短縮と内部品質・組織文化の関係性 2. 内部品質と組織文化がリードタイム短縮にどれほど寄与するのか? 3.
まとめ アジェンダ
© 2024 Loglass Inc. 01 新規参入者のリードタイムの短縮と 内部品質・組織文化の関係性 4
© 2024 Loglass Inc. 機能をリリースするまでにかかるトータルリードタイム 要 件 定 義 設
計 開 発 テ ス ト リリース 01|新規参入者のリードタイムの短縮と内部品質・組織文化の関係性
© 2024 Loglass Inc. 機能をリリースするまでにかかるトータルリードタイム 要 件 定 義 設
計 開 発 テ ス ト キ ャ ッ チ ア ッ プ 新規参入者が リリース 01|新規参入者のリードタイムの短縮と内部品質・組織文化の関係性
© 2024 Loglass Inc. 成長する組織・プロダクトとキャッチアップのコストの増大 成長する組織・プロダクト 複雑化するコードと仕様 キャッチアップにかかる 時間とコストの増大 結果的にリードタイムが増加
01|新規参入者のリードタイムの短縮と内部品質・組織文化の関係性
© 2024 Loglass Inc. キャッチアップにかかる時間が 「ゼロ」 になったとしたら どんな世界になりますか? 8
© 2024 Loglass Inc. キャッチアップの時間が「ゼロ」になった世界 増員コストゼロ 即座に100%の開発 開発速度の向上 価値提供速度の最大化 個⼈もチームも組織もみんなハッピー
01|新規参入者のリードタイムの短縮と内部品質・組織文化の関係性
© 2024 Loglass Inc. 学び方の四象限 反省型 ・振り返り、KPT 指導型 ・FBをもらう ・怒られること
観察型 ・見て真似する(盗む) 学問型 ・本を読む 自分で考えて学ぶ 他人の考えから学ぶ 自分の経験から学ぶ 他人の経験から学ぶ 参照元:https://speakerdeck.com/nrryuya/kiyatutiatuhusu-du-kasu-i-number-toha?slide=4 01|新規参入者のリードタイムの短縮と内部品質・組織文化の関係性
© 2024 Loglass Inc. 参照元:https://speakerdeck.com/nrryuya/kiyatutiatuhusu-du-kasu-i-number-toha?slide=4 学び方の四象限 反省型 • 手を動かし、実験し、技術の手 触り感を掴む
• 設計などは自分でウンウン悩 んで初めて身につく 指導型 • レビューやペアプロを通して、 良い方法を学ぶ 観察型 • 人のコードから良い実装や設 計をパクる • 他の作業を見ながら、思考回 路を想像する 学問型 • 技術の本質を論理的に理解す るには、学術文献が重要 • 実装のデザインパターンなど も先人が整理してくれている 自分で考えて学ぶ 他人の考えから学ぶ 自分の経験から学ぶ 他人の経験から学ぶ 01|新規参入者のリードタイムの短縮と内部品質・組織文化の関係性
© 2024 Loglass Inc. 参照元:https://speakerdeck.com/nrryuya/kiyatutiatuhusu-du-kasu-i-number-toha?slide=4 学び方の四象限 反省型 • 手を動かし、実験し、技術の手 触り感を掴む
• 設計などは自分でウンウン悩 んで初めて身につく 指導型 • レビューやペアプロを通して、 良い方法を学ぶ 観察型 • 人のコードから良い実装や設 計をパクる • 他の作業を見ながら、思考回 路を想像する 学問型 • 技術の本質を論理的に理解す るには、学術文献が重要 • 実装のデザインパターンなど も先人が整理してくれている 自分で考えて学ぶ 他人の考えから学ぶ 自分の経験から学ぶ 他人の経験から学ぶ 開発組織からサポート可能 01|新規参入者のリードタイムの短縮と内部品質・組織文化の関係性
© 2024 Loglass Inc. 内部品質の向上と組織文化の醸成 規律のあるコード 内部品質を大事にする文化 観察型 指導型 学問型
01|新規参入者のリードタイムの短縮と内部品質・組織文化の関係性
© 2024 Loglass Inc. 02 内部品質と組織文化がリードタイム短縮に どれほど寄与するのか? 14
© 2024 Loglass Inc. 様々な取り組みをしているが、 実施にどれぐらい効果があるのか? 検証してみよう! 02|内部品質と組織文化がリードタイム短縮にどれほど寄与するのか?
© 2024 Loglass Inc. • 入社してから大まかにコードを理解するまで の期間 • 入社して最初のPRを作成するまでの期間 •
担当領域の現在の理解度 • コードや仕様を理解するのに役立ったポイント 開発部のメンバーにアンケート チーム名 02|内部品質と組織文化がリードタイム短縮にどれほど寄与するのか?
© 2024 Loglass Inc. アンケート結果 入社してから大まかにコードを理解するのにかかった期間 入社してから最初のPRを作成するまでの期間 1週間以内:53.3% 1ヶ⽉以内:86.6% 1週間以内が90%以上
約9割が1週間〜1ヶ月で 大まかにキャッチアップができている 02|内部品質と組織文化がリードタイム短縮にどれほど寄与するのか?
© 2024 Loglass Inc. アンケート結果 60〜80%なら短期間で成果が出ている 100%のキャッチアップには時間がかかる ほぼ全領域を理解できている 一部だけなら理解できている ほぼ理解できていない
担当領域の現在の理解度 02|内部品質と組織文化がリードタイム短縮にどれほど寄与するのか?
© 2024 Loglass Inc. アンケート結果:役立ったポイント • 規律のあるコード ◦ オニオンアーキテクチャ ◦
ドメイン駆動設計・ドメインモデル図 ◦ プロダクトのコードの作法・設計標準 • 内部品質を大事にする文化 ◦ Unitテストの充実さ ◦ ペアプログラミング・オンボーディング ◦ リファクタリングが当たり前の文化 02|内部品質と組織文化がリードタイム短縮にどれほど寄与するのか?
© 2024 Loglass Inc. 特に効果のあった施策 • オニオンアーキテクチャ・ドメイン駆動設計 • プロダクトのコードの作法・設計標準 •
リファクタリングが当たり前の文化 02|内部品質と組織文化がリードタイム短縮にどれほど寄与するのか?
© 2024 Loglass Inc. オニオンアーキテクチャ・ドメイン駆動設計 02|内部品質と組織文化がリードタイム短縮にどれほど寄与するのか?
© 2024 Loglass Inc. オニオンアーキテクチャ・ドメイン駆動設計 • パッケージ戦略が明確でどこにどのような機能があるのかわかりやすい ◦ 責務が明確でなんとなく探すだけで見たいところが見つかる ◦
複雑な部分とそうでない部分がはっきりしている ◦ フロントのURLからバックエンドまで一貫してコードのありかが追いやすい • プロダクトが何を実現したくて、どういった機能があるのかがコードから大 まかに想像できる 02|内部品質と組織文化がリードタイム短縮にどれほど寄与するのか?
© 2024 Loglass Inc. 参照元:https://speakerdeck.com/nrryuya/kiyatutiatuhusu-du-kasu-i-number-toha?slide=4 学び方の四象限 反省型 • 手を動かし、実験し、技術の手 触り感を掴む
• 設計などは自分でウンウ 指導型 • レビューやペアプロを通して、 良い方法を学ぶ 観察型 • 人のコードから良い実装や設 計をパクる • 他の作業を見ながら、思考回 路を想像する 学問型 • 技術の本質を論理的に理解す るには、学術文献が重要 • 実装のデザインパターンなど も先人が整理してくれている 自分で考えて学ぶ 他人の考えから学ぶ 自分の経験から学ぶ 他人の経験から学ぶ 02|内部品質と組織文化がリードタイム短縮にどれほど寄与するのか? 他人の経験や思考へのアクセスが容易
© 2024 Loglass Inc. プロダクトコードの作法・設計標準 02|内部品質と組織文化がリードタイム短縮にどれほど寄与するのか?
© 2024 Loglass Inc. プロダクトコードの作法・設計標準 • 設計標準のドキュメントがしっかりメンテナンスされていて理解しやすい ◦ ドメインモデリングガイド ◦
リファクタリングの指標 ◦ テストコード設計標準 ◦ テスト分析設計 • メンバーが出版している書籍が理解に役立った 02|内部品質と組織文化がリードタイム短縮にどれほど寄与するのか?
© 2024 Loglass Inc. 参照元:https://speakerdeck.com/nrryuya/kiyatutiatuhusu-du-kasu-i-number-toha?slide=4 学び方の四象限 反省型 • 手を動かし、実験し、技術の手 触り感を掴む
• 設計などは自分でウンウ 指導型 • レビューやペアプロを通して、 良い方法を学ぶ 観察型 • 人のコードから良い実装や設 計をパクる • 他の作業を見ながら、思考回 路を想像する 学問型 • 技術の本質を論理的に理解す るには、学術文献が重要 • 実装のデザインパターンなど も先人が整理してくれている 自分で考えて学ぶ 他人の考えから学ぶ 自分の経験から学ぶ 他人の経験から学ぶ 02|内部品質と組織文化がリードタイム短縮にどれほど寄与するのか? 他人の経験と考えがドキュメント化
© 2024 Loglass Inc. リファクタリングが当たり前の文化 https://levtech.jp/media/article/interview/detail_273/ 02|内部品質と組織文化がリードタイム短縮にどれほど寄与するのか?
© 2024 Loglass Inc. リファクタリングが当たり前の文化 • 開発組織に自然とリファクタリングする文化が存在 • ペアプログラミングやPRのコメントなどで、リファクタリングに関する会話が 自然に発生し、「どうなるとコードが読みやすいか?(適切な責務になる
か?)」についての知見が共有される • リファクタリングの指標に関するドキュメントがある 02|内部品質と組織文化がリードタイム短縮にどれほど寄与するのか?
© 2024 Loglass Inc. 参照元:https://speakerdeck.com/nrryuya/kiyatutiatuhusu-du-kasu-i-number-toha?slide=4 学び方の四象限 反省型 • 手を動かし、実験し、技術の手 触り感を掴む
• 設計などは自分でウンウン悩 んで初めて身につく 指導型 • レビューやペアプロを通して、 良い方法を学ぶ 観察型 • 人のコードから良い実装や設 計をパクる • 他の作業を見ながら、思考回 路を想像する 学問型 • 技術の本質を論理的に理解す るには、学術文献が重要 • 実装のデザインパターンなど も先人が整理してくれている 自分で考えて学ぶ 他人の考えから学ぶ 自分の経験から学ぶ 他人の経験から学ぶ 02|内部品質と組織文化がリードタイム短縮にどれほど寄与するのか? 組織文化による学習機会の最大化
© 2024 Loglass Inc. キャッチアップが短縮できる規律のあるコードと それを維持する内部品質を大事にする文化が醸成されている リードタイムの短縮に繋がっている 02|内部品質と組織文化がリードタイム短縮にどれほど寄与するのか?
© 2024 Loglass Inc. 03 まとめ 31
© 2024 Loglass Inc. まとめ • リードタイムの短縮には内部品質の高さと組織文化の醸成が重要 ◦ 特に新規参入者はキャッチアップのコストを削減できると効果的 •
施策の検証を行った結果、効果が出ていることを確認できた ◦ 最初の1週間〜1ヶ月で大まかなキャッチアップが完了 • キャッチアップの短縮ができる設計があり、それを維持する文化が醸成され ていることが重要 ◦ 規律のあるコード ◦ 内部品質を大事にする文化 03|まとめ
© 2024 Loglass Inc. 参照元:https://speakerdeck.com/nrryuya/kiyatutiatuhusu-du-kasu-i-number-toha?slide=4 学び方の四象限 反省型 • 手を動かし、実験し、技術の手 触り感を掴む
• 設計などは自分でウンウン悩 んで初めて身につく 指導型 • レビューやペアプロを通して、 良い方法を学ぶ 観察型 • 人のコードから良い実装や設 計をパクる • 他の作業を見ながら、思考回 路を想像する 学問型 • 技術の本質を論理的に理解す るには、学術文献が重要 • 実装のデザインパターンなど も先人が整理してくれている 自分で考えて学ぶ 他人の考えから学ぶ 自分の経験から学ぶ 他人の経験から学ぶ 開発組織からサポート可能 03|まとめ 再掲
© 2024 Loglass Inc. 内部品質の向上と組織文化の醸成 規律のあるコード 内部品質を大事にする文化 観察型 指導型 学問型
03|まとめ 再掲
© 2024 Loglass Inc. キャッチアップが短縮できる規律のあるコードと それを維持する内部品質を大事にする文化が醸成されている リードタイムの短縮に繋がっている 03|まとめ 再掲
© 2024 Loglass Inc. キャッチアップにかかる時間が 「ゼロ」になった世界で またお会いしましょう 36
© 2024 Loglass Inc. 37