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
素早いバリュー提供のための DROBEの新戦略
Search
Ippei Sumida
September 05, 2023
Programming
0
1.4k
素早いバリュー提供のための DROBEの新戦略
DROBE Engineer Night #5でお話ししたスライドです。
#DROBEEngNight
Ippei Sumida
September 05, 2023
Tweet
Share
More Decks by Ippei Sumida
See All by Ippei Sumida
DROBEの生成AI活用事例 with AWS
ippey
0
250
みんなでQAしてる話
ippey
0
130
AIで生成したものをAIでチェックしてる話
ippey
0
2.2k
『WordPressコミュニティで学ぶ』OSS貢献の多様性
ippey
0
1.1k
25分で理解する!Symfonyの魅力とその実践的活用法
ippey
1
7.4k
Symfony 6.3のおすすめ新機能まとめ
ippey
1
2k
PhpStorm + GitHub Copilotはいいぞ
ippey
0
2.9k
それぞれの特徴から考えるフレームワーク選び
ippey
1
1k
なるべくJavaScriptを書かないで SymfonyのUIをリッチにする Symfony UX
ippey
1
2.1k
Other Decks in Programming
See All in Programming
What’s Fair is FAIR: A Decentralised Future for WordPress Distribution
rmccue
0
150
エンジニアに事業やプロダクトを理解してもらうためにやってること
murabayashi
0
140
SidekiqでAIに商品説明を生成させてみた
akinko_0915
0
130
flutter_kaigi_2025.pdf
kyoheig3
1
160
Vueで学ぶデータ構造入門 リンクリストとキューでリアクティビティを捉える / Vue Data Structures: Linked Lists and Queues for Reactivity
konkarin
1
150
ドメイン駆動設計のエッセンス
masuda220
PRO
15
7.6k
Swift Concurrency 年表クイズ
omochi
3
220
MCPサーバー「モディフィウス」で変更容易性の向上をスケールする / modifius
minodriven
7
1.4k
歴史から学ぶ「Why PHP?」 PHPを書く理由を改めて理解する / Learning from History: “Why PHP?” Rediscovering the Reasons for Writing PHP
seike460
PRO
0
140
AI 駆動開発におけるコミュニティと AWS CDK の価値
konokenj
5
380
AI時代に必須!状況言語化スキル / ai-context-verbalization
minodriven
3
370
FlutterKaigi 2025 システム裏側
yumnumm
0
670
Featured
See All Featured
A Tale of Four Properties
chriscoyier
161
23k
Visualization
eitanlees
150
16k
Building an army of robots
kneath
306
46k
How To Stay Up To Date on Web Technology
chriscoyier
791
250k
Thoughts on Productivity
jonyablonski
73
4.9k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.2k
Testing 201, or: Great Expectations
jmmastey
46
7.8k
A Modern Web Designer's Workflow
chriscoyier
697
190k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.3k
Faster Mobile Websites
deanohume
310
31k
What’s in a name? Adding method to the madness
productmarketing
PRO
24
3.8k
Making Projects Easy
brettharned
120
6.4k
Transcript
ૉૣ͍όϦϡʔఏڙͷͨΊͷ DROBEͷ৽ઓུ DROBE Engineer Night #5
• ֯ాɹҰฏ • גࣜձࣾDROBE • Kansai Symfony Meetup • CoderDojo
ຕํ ࣗݾհ LaravelͩΑ
৬ۀɿεΫϥϜϚελʔ
DROBEͰεΫϥϜϚελʔ͡Ί·ͨ͠
ࣗޙΖ͔Β͢ΔλΠϓͷϦʔμʔγοϓΛ ࢦͯ͠ΈΑ͏͔ͳͱߟ͍͑ͯ·͢ɻ ʰαʔόϯτϦʔμʔγοϓʱͱ͍͏ͷ͕͋ΔΑ͏Ͱɺ ͜Εʹઓͯ͠ΈΑ͏͔ͱࢥ͍ͬͯ·͢ɻ
৽ͨͳόϦϡʔఏڙઓུ
ࠓ·ͰͷόϦϡʔఏڙ ػೳ ػೳ ػೳ ػೳ ػೳ ػೳ ػೳ ػೳ ػೳ
ػೳ 7.1.0 7.1.1 7.1.2 7.2.0 7.3.0
ࠓ·ͰͷόϦϡʔఏڙ ػೳ ػೳ ػೳ ػೳ ػೳ ػೳ ػೳ ػೳ ػೳ
ػೳ 7.1.0 7.1.1 7.1.2 7.2.0 7.3.0 ΠϚΠν… ίετ ͔͔Δ
ࠓ·ͰͷόϦϡʔఏڙ ػೳ ػೳ ػೳ ػೳ ػೳ ػೳ ػೳ ػೳ ػೳ
ػೳ 7.1.0 7.1.1 7.1.2 7.2.0 7.3.0 ޮՌ͋ͬͨʂ ͲΕ͕ ޮ͍ͨʁ
ࠓ·ͰͷόϦϡʔఏڙ ػೳ ػೳ ػೳ ػೳ ػೳ ػೳ ػೳ ػೳ ػೳ
ػೳ 7.1.0 7.1.1 7.1.2 7.2.0 7.3.0 ޮՌ͋ͬͨʂ ͲΕ͕ ޮ͍ͨʁ ⭕⭕⭕ ❌❌
ʲඪʳখ͞ͳ୯ҐͰԾఆˠݕূΛߦ͍ɺ܁Γฦ͢ ݕূ ࣮ Ծఆ
͜Ε͔ΒͷόϦϡʔఏڙ ػೳ ػೳ ػೳ ػೳ ػೳ
͜Ε͔ΒͷόϦϡʔఏڙ ػೳ ػೳ ػೳ ػೳ ػೳ
৽ͨͳऔΓΈͱֶͼ
։ൃʙϦϦʔεͷݟ͠
ࠓ·ͰͷϦϦʔεϑϩʔ όʔδϣϯηϚϯςΟοΫόʔδϣχϯά ػೳ ػೳ ػೳ ػೳ ػೳ ػೳ ػೳ ػೳ
ػೳ ػೳ 7.1.0 7.1.1 7.1.2 7.2.0 7.3.0
ࠓ·ͰͷϦϦʔεϑϩʔ ϒϥϯνGitFlow main develop feature release 2"
ࠓ·ͰͷϦϦʔεϑϩʔ ϦϦʔεखॱઌʹόʔδϣϯ൪߸͕ܾఆ͞Εͯͨ όʔδϣϯܾఆ releaseϒϥϯν masterʹϚʔδ
ϦϦʔεϑϩʔͷվળϩʔυϚοϓ • developΛܦ༝͠ͳ͍ϑϩʔʢGitHub Flowʣʹมߋ • ηϚϯςΟοΫόʔδϣχϯάΛΊΔ • ϦϦʔεલͰͳ͘ɺϦϦʔεલʹόʔδϣϯΛࣗಈͰܾΊΔ • ͋ΘͤͯɿࣗಈϚΠάϨʔγϣϯ
• ͋ΘͤͯɿखಈঝೝΛΊΔ
Github Flow
DROBEͷ։ൃϑϩʔͰGit Flow͕߹͍͕ͬͯͨ… • Git FlowͰӡ༻͍ͯͨͨ͠Ίɺඞͣdevelop -> release -> masterͱͳ͍ͬͯͨ •
֬ೝεςʔδϯάڥͰߦ͍͕ͬͯͨɺεςʔδϯάdevelopͰߏங͍ͯ͠ ͨ • ↑ͷͨΊɺϦϦʔε͕Ͱ͖ͳ͍ϩοΫঢ়ଶ͕ੜ·Εͯ͠·͍ͬͯͨ • 7.1.0 Λग़͍͚ͨ͠Ͳɺ7.0.3(hot fi x)͕ݕূͰ͖ͯͳ͍ͷͰϦϦʔεͰ͖ͳ͍ • ݁ՌɺϦϦʔε͕େ͖͘ͳͬͨɻʢ͍ͭͰʹ͜Εʂ͕૿͑Δʣ
GitHub Flow main feature
ݕূͦΕͧΕͷϒϥϯνΛCodespacesͰ جຊεςʔδϯάڥ͕ෆཁʹ main feature 2" 2"
େ͖͘ͳΔ߹featureϒϥϯνΛ࡞Δ main feature
Ͳ͏ͯ͠εςʔδϯάڥ͕ඞཁͳ߹develop main feature develop
ΧϨϯμʔόʔδϣχϯά ѥछ
ࠓ·ͰSemantic VersioningΛ࠾༻ ػೳ ػೳ ػೳ ػೳ ػೳ ػೳ ػೳ ػೳ
ػೳ ػೳ 7.1.0 7.1.1 7.1.2 7.2.0 7.3.0
ʮͲͬͪΛ͋͛Ε͍͍ΜͩΖʁʯ͕ൃੜͯͨ͠ 7.0.1 ύονʁ ϚΠφʔʁ ˞%30#&ͰϏδωεཁ݅ʹΑΔٸ͗ͷରԠɾόάରԠ྆ํΛlIPU fi YzͱݺΜͰ͍ͨͷͰɺΑ͘͜ͷ͕ى͜Γ·ͨ͠ɻ
ηϚϯςΟοΫ͔ΒΧϨϯμʔόʔδϣχϯάʹ 7.0.1 2023.12
৽͍͠ϦϦʔεϑϩʔ PR࡞ mainϚʔδ ϦϦʔευϥϑτ ύϒϦογϡʂ ˢ ࣗಈ࠾൪
Feature Flag
େ͖ͳػೳΛ·ͱΊͯग़͍ͨ࣌͋͠Δ ػೳ ػೳ ػೳ ػೳ ػೳ ػೳ ػೳ ػೳ ػೳ
ػೳ ·ͱΊͯ ग़͍ͨ͠
None
None
ઌߦͯ͠৽ػೳΛϦϦʔεՄೳʹ ػೳ ػೳ ػೳ ػೳ ػೳ ϑϥά OFF ϑϥά ON
৽ػೳ༗ޮԽ ৽ػೳແޮ
Four keys
DROBEʹ։ൃঢ়گͷࢦඪ͕ͳ͔ͬͨ • ͳΜͱͳ͘ʮࠓճ͕͔͔࣌ؒͬͨʯʮো͕ଟ͔ͬͨʯͱ͍͏ೝࣝͯͨ͠ • ͜ͷঢ়گͩͱɺϓϩμΫτͷ࣏ྍ͕͓Ζ͔ͦʹͳͬͯ͠·͏ • ʮো͕ଟ͍ͷͰ࣏͍ͨ͠ʯͱ͍ͬͯࠜڌ͕ͳ͍ • ͔ͤͬ͘ૣ͘ϦϦʔε͍ͯ͠ΔࢪࡦΛͯ͠Δ͔ΒଌΓ͍ͨ
Offers MGRಋೖ
Offers MGRʹΑΓଌΕΔΑ͏ʹͳͬͨͷ • Four Keysੳ • ϦϦʔε·ͰͷϦʔυλΠϜ • σϓϩΠͷස •
োͷൃੜ • োͷ෮چ࣌ؒ • ίϛϡχέʔγϣϯੳ • and more…
ۙͷ Four Keysੳ
ϦϦʔεϑϩʔΛมߋͨ͠·ͳͼ • ϦϦʔεͷεϐʔυ͕֨ஈʹ্͕ͬͨɻʢݱࡏ 3ϦϦʔε / ʣ • খ͘͞ग़͘͢͠ͳͬͨ • ϦϦʔεෛՙ͕ͱͯԼ͕ͬͨ
• Ұํ • ݕূ͕ͭ·Γ͘͢ͳͬͨ • PBIΛখ͘͢͞Δͷ͕·ͩۤख • εςʔδϯάڥͰ͔֬͠ೝͰ͖ͳ͍͜ͱ͕͋Δ͜ͱ͕Θ͔ͬͨ • LINE, Slack௨, ຊ൪ʹ͍ۙσʔλߏͳͲ • ίʔυɾςετ͕ͪΐͬͱෳࡶʹͳΓ͍͢
ҙࢥܾఆͷվળ
ಉ͡ػೳͷ։ൃΛෳਓ͕Δ͜ͱ͕૿͖͑ͯͨ A-a A-b A-c ػೳA
͍ظؒͰ༷ʹ͍ͭͯٞ͢Δ͕ඞཁͱͳͬͨ A-a A-b A-c ػೳA Ͳ͏͠·͠ΐ͏ʁ
ADR (Architecture Decision Records)
ADRΛಋೖ • ॏްͳ༷ॻखʹ༨Δ • ϝϯςφϯε͞Εͳ͍ɺ͢Δࣗ৴͕ͳ͍ • ͳʹ͔͠Βͷه͍ͨ͠ • ݕࡧɾࢀর͍ͨ͠ •
ʮ݁ہɺͲ͏ͳͬͨΜ͚ͩͬʁʯ͕Γ͍ͨ
ADRͷத • λΠτϧɿܾΊ͍ͨ͜ͱͷλΠτϧ • εςʔλεɿঢ়گʢఏҊɺ٫Լɺঝೝʣ • ΧςΰϦʔɿಠ߲ࣗɺ֘ͷΧςΰϦʔʢWeb, Πϯϑϥ, MLͳͲʣ •
ίϯςΩετɿͷઆ໌ɺ༰ • ܾఆࣄ߲ɿܾఆͨ͠ʢܾఆ͍ͨ͠ʣ༰ͱཧ༝ • ݁Ռɿ͜ͷมߋͰ؆୯ʹͳΔ͜ͱɺ͘͠ͳΔ͜ͱ
ADRαϯϓϧ λΠτϧ Ϣʔβใʹ9ͷΞΧϯτใΛอଘ͍ͨ͠ εςʔλε ঝೝ ίϯςΩετ Ϣʔβใͱͯ͠ɺ9ͷΞΧϯτใΛऔಘ͢Δ͜ͱʹͳͬͨɻ ͦΕΛอଘ͢ΔͨΊʹVTFSTςʔϒϧʹɺzY@VTFSOBNFz ϑΟʔϧυΛՃ͍ͨ͠
ܾఆࣄ߲ ϢʔβใͰ͋Δ͕جຊใͰͳ͘ɺࠓޙ5ISFBETͳͲՃ͞ΕΔՄೳੑ͕ ͋ΔͷͰɺVTFSTςʔϒϧͰͳ͘ɺVTFS@TOTFTςʔϒϧΛՃ͠ɺͦ͜ʹอଘ͢Δ lTOT@UZQFz lTOT@VTFSOBNFzΛอଘ͢Δ ݁Ռ ςʔϒϧΛՃ͢ΔͷͰɺϦϨʔγϣϯΛΔඞཁ͕͋Δ ςʔϒϧՃͳͷͰɺϚΠάϨʔγϣϯͷ࣌ؒۃখ
εΫϥϜӡӦͷվળ
LeSS (Large Scaled Scrum)
εΫϥϜ։࢝ޙ νʔϜ༁ ✖ 1 PO SM ✖ 2 PdM ✖
3 Dev ✖ 5 QA ✖ 2 ML ✖ 2 Design ✖ 1
νʔϜ͕େ͖͍ͱඇޮʹͳΔ • MTG͕͘ͳΓ͕ͪ • ඞཁҎ্ͷٞʹͳΓ͕ͪ • ͞ͳ͍ਓ͕ग़ͯ͘Δ • ଞਓࣄʹͳΔ •
શһͷҙݟΛٵ্͍͛ʹ͍͘ • ݁Ռɺඞཁͳҙݟ͕ͳ͍͕͠Ζʹ͞Ε͕ͪ • ଟܾΛͱͬͯ͠·͏
͍͍ͱࢥ͍·͢ ੬ऑੑ͕… େࣄͳҙݟཱ͕ͪফ͑ͯ͠·͏͓ͦΕ͕
SM ΓͮΕ͐…
LeSS (Large Scaled Scrum)ͷಋೖ 5FBN" 5FBN# SM PdM Dev QA
Dev SM PdM Dev QA Dev Dev PdM Design PO
τϥϕϥʔͲͪΒͷνʔϜʹೖΕΔ 5FBN" 5FBN# SM PdM Dev QA Dev SM PdM
Dev QA Dev Dev PdM Design τϥϕϥʔ PO
ଞνʔϜͷϔϧϓՄೳ 5FBN" 5FBN# SM PdM Dev QA Dev SM PdM
Dev QA Dev Dev PdM Design PO
εΫϥϜӡӦΛมߋͨ͠·ͳͼ • νʔϜ͝ͱͷػೳʹϑΥʔΧεͰ͖Δ • MTGɺ։ൃεϜʔζʹ • υϝΠϯ͕ࣝٵऩ͘͢͠ͳͬͨ • ͢ਓ͕૿͑ɺҙݟग़͘͢ͳͬͨ •
Ұํ • νʔϜؒͷίϛϡχέʔγϣϯ͕رബʹͳ͖ͬͯͨ • ཱͪҐஔͷ͍͠λεΫΛर͍ʹ͍͘ • τϥϕϥʔ͕͘͠ͳΓ͕ͪ • ϔϧϓͷํΛߟ͑ͳ͍ͱɺ͏ยํͷνʔϜʹ໎͕͔͔Δ
վળ·ͩ·ͩ͜Ε͔Βʂ
We are hiring!! ΧδϡΞϧ໘ஊਵ࣌डதͰ͢ʂ DROBE͍͍ͧ ࠓͳΒ৭ʑͳτϥΠΛମݧͰ͖·͢
None