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
プロジェクト新規参入者のリードタイム短縮の観点から見る、品質の高いコードとアーキテクチ...
Search
akkino/D-En
October 26, 2024
Programming
1
1.6k
プロジェクト新規参入者のリードタイム短縮の観点から見る、品質の高いコードとアーキテクチャを保つメリット
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
810
経験学習型キャリア探索法 ~ふりかえりで始めるキャリアパスの見つけ方~
d_endo
2
1.3k
負荷試験の観点から見るGraphQLにおけるPHPのコードチューニング
d_endo
1
2.7k
Step Functions Expressで作るフルマネージドなサーバーレスバッチ
d_endo
1
2.6k
AWS認定資格のススメ
d_endo
1
490
Laravel + Lighthouseで始める低コストなGraphQL入門
d_endo
4
4.1k
30分でOpenID Connect完全に理解したと言えるようになる勉強会
d_endo
47
29k
今だからこそ考える「科学技術の倫理学」
d_endo
2
1.4k
アホで乗り越える失敗との付き合い方
d_endo
2
1.4k
Other Decks in Programming
See All in Programming
Bytecode Manipulation 으로 생산성 높이기
bigstark
1
330
ドメインモデリングにおける抽象の役割、tagless-finalによるDSL構築、そして型安全な最適化
knih
10
1.8k
コードに語らせよう――自己ドキュメント化が内包する楽しさについて / Let the Code Speak
nrslib
6
1.4k
Javaに鉄道指向プログラミング (Railway Oriented Pro gramming) のエッセンスを取り入れる/Bringing the Essence of Railway-Oriented Programming to Java
cocet33000
2
540
Datadog RUM 本番導入までの道
shinter61
1
270
赤裸々に公開。 TSKaigiのオフシーズン
takezoux2
0
130
「ElixirでIoT!!」のこれまでとこれから
takasehideki
0
350
コード書くの好きな人向けAIコーディング活用tips #orestudy
77web
3
300
The Evolution of Enterprise Java with Jakarta EE 11 and Beyond
ivargrimstad
1
670
イベントストーミングから始めるドメイン駆動設計
jgeem
4
830
データベースコネクションプール(DBCP)の変遷と理解
fujikawa8
1
250
ワイがおすすめする新潟の食 / 20250530phpconf-niigata-eve
kasacchiful
0
300
Featured
See All Featured
Into the Great Unknown - MozCon
thekraken
39
1.8k
Mobile First: as difficult as doing things right
swwweet
223
9.6k
Become a Pro
speakerdeck
PRO
28
5.4k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
3.9k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
31
1.2k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
52
2.8k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
2.8k
How STYLIGHT went responsive
nonsquared
100
5.6k
Building Adaptive Systems
keathley
43
2.6k
A Tale of Four Properties
chriscoyier
159
23k
Automating Front-end Workflow
addyosmani
1370
200k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
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