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
60以上のプロダクトを持つ組織における開発者体験向上への取り組み - チームAPIとBacks...
Search
VTRyo
July 11, 2025
Technology
0
160
60以上のプロダクトを持つ組織における開発者体験向上への取り組み - チームAPIとBackstageで構築する組織の可視化基盤 - / sre next 2025 Efforts to Improve Developer Experience in an Organization with Over 60 Products
SRE NEXT 2035
VTRyo
July 11, 2025
Tweet
Share
More Decks by VTRyo
See All by VTRyo
一体いつからSRE NEXTがSREだけのカンファレンスだと錯覚していた? / When did you ever get the idea that SRE NEXT was a conference just for SREs?
vtryo
1
160
一人から始めたSREチーム3年の歩み - 求められるスキルの変化とチームのあり方 - / The three-year journey of the SRE team, which started all by myself
vtryo
9
11k
2ヶ月かかるDBアップグレード検証を最大2週間に短縮した自作Go製CLIツール「Platinum」を紹介する / Introducing Go CLI tool "Platinum" for shortened DB upgrade validation
vtryo
3
1.5k
MySQLテーブル毎のデータサイズ集計をDatadog × Prometheus Exporter × Kubernetesを使って自動化する / Automate data size aggregation for each MySQL table using Datadog, Prometheus Exporter and Kubernetes
vtryo
0
380
自分だけの、誰も想像できないキャリアの育て方 ~懇親会で実践できる!偶然から始めるキャリアプラン~ / Career planning starting by luckly
vtryo
2
1.3k
なぜSREをはじめるのは難しいのか / Why is it hard to start SRE?
vtryo
1
600
Datadogでシステムとアプリケーション情報を民主化をはじめよう / System and Application information democratize with datadog
vtryo
2
3.5k
サービスと開発者に最も近いProduct SREsとして 取り組んでいるコト / Work as Product SREs closest to services and developers
vtryo
0
3k
一人から始めるプロダクトSRE / How to start SRE in a product team, all by yourself
vtryo
5
13k
Other Decks in Technology
See All in Technology
american aa airlines®️ USA Contact Numbers: Complete 2025 Support Guide
aaguide
0
300
PO初心者が考えた ”POらしさ”
nb_rady
0
210
AI時代の開発生産性を加速させるアーキテクチャ設計
plaidtech
PRO
3
160
SRE不在の開発チームが障害対応と 向き合った100日間 / 100 days dealing with issues without SREs
shin1988
0
150
Enhancing SaaS Product Reliability and Release Velocity through Optimized Testing Approach
ropqa
1
240
shake-upを科学する
rsakata
3
190
Lakebaseを使ったAIエージェントを実装してみる
kameitomohiro
0
140
AIの全社活用を推進するための安全なレールを敷いた話
shoheimitani
2
540
Yahoo!しごとカタログ 新しい境地を創るエンジニア募集!
lycorptech_jp
PRO
0
130
ゼロからはじめる採用広報
yutadayo
3
970
Getting to Know Your Legacy (System) with AI-Driven Software Archeology (WeAreDevelopers World Congress 2025)
feststelltaste
1
150
品質と速度の両立:生成AI時代の品質保証アプローチ
odasho
1
380
Featured
See All Featured
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
8
820
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
26k
Done Done
chrislema
184
16k
Into the Great Unknown - MozCon
thekraken
40
1.9k
GitHub's CSS Performance
jonrohan
1031
460k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
229
22k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
18
970
StorybookのUI Testing Handbookを読んだ
zakiyama
30
5.9k
Writing Fast Ruby
sferik
628
62k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
16k
Unsuck your backbone
ammeep
671
58k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.4k
Transcript
60Ҏ্ͷϓϩμΫτΛ࣋ͭ৫ʹ͓͚Δ ։ൃऀମݧ্ͷऔΓΈ - νʔϜAPIͱBackstageͰߏங͢Δ৫ͷՄࢹԽج൫ - Money Foward, Inc - Platform
and Reliability Engineering ຊ෦ VTRyo SRE NEXT 2025
202110݄ʹϚωʔϑΥϫʔυೖࣾ ஶ ”ITΤϯδχΞͷͨΊͷ ɹɹ ۮવ͔Β࢝ΊΔΩϟϦΞϓϥϯ” - SRE NEXTॳճ͔Βࢀઓ - SRE
NEXT2022 ONLINEͰॳొஃ - “Ұਓ͔Β࢝ΊΔϓϩμΫτSRE” - Road to SRE NEXT@໊ݹ - “Ұମ͍͔ͭΒSRE NEXT͕SRE͚ͩͷΧϯϑΝϨϯε ͩͱࡨ͍֮ͯͨ͠ʁ” - ͦͷଞ SREؔ࿈ͷొஃ - SRE Kaigi 2025 - “Ұਓ͔Β࢝ΊͨSREνʔϜ3ؒͷาΈ" VTRyo
࣮αφࢣࢿ͍֨࣋ͬͯΔΒ͍͠ - ࠓճ೦ئͷεϙϯαʔϒʔεઃஔ ! ͋ͦͼʹ͖ͯͶ ʢ͜ΕεϙϯαʔηογϣϯͰ͋Γ·ͤΜʣ - झຯ - ΫϥϑτϏʔϧͷ৹ࠪһࢿ֨औಘ🍺
- ࠷ۙΠϕϯτؒआΓͰεύΠεΧϨʔमߦத🍛 VTRyo
େ͖ͳ৫ʹ͓͚Δใஅͷղܾࡦͱͯ͠ͷɺνʔϜAPIͱ Backstageͷ࣮ફత׆༻๏ ࠓ͔Β࢝ΊΒΕΔࢪࡦͱͯ͠ ᶃνʔϜؒ࿈ܞʹඞཁͳใͷఆٛํ๏ ᶄBackstageςϯϓϨʔτͷ࣮ςΫχοΫ ᶅ৫ͷنʹؔΘΒͣԠ༻Ͱ͖ΔऔΓΈ ࠓ࣋ͪؼΕΔ͜ͱ ৫ͷෳࡶੑʹཱ͔ͪ͏ώϯτ
ϚωʔϑΥϫʔυͷ৫ΛநԽͨ͠ਤ
ใͷஅͱ୳ࡧίετͷ૿େ νʔϜ͝ͱʹҟͳΔπʔϧͰใཧ Google DocɺGitHub Wikiͷπʔϧࢄ ٕज़ελοΫόϥόϥɻͲͷνʔϜ͕ԿΛ͍ͬͯΔ͔ෆ໌ ͷॴࡏ͕ෆ໌֬ ʮ͜ͷAPIʹ͕ൃੜͨ͠߹ɺ୭ʹ࿈བྷ͢Ε͍͍ͷ͔ʯ جຊతͳใͷѲ͕ࠔ എܠͱ՝
ؔੑͷՄࢹԽͷ͠͞ දܭࢉιϑτͰදݱ͢Δ߹ɺνʔϜͱϦιʔεͷෳࡶͳؔ ੑΛදݱ͢Δʹݶք͕͋Δ ԾʹͦΕͰཧ͢Δͱɺใཧऀ͕தԝूݖԽ͢ΔϦεΫ ඇޮͳΦϯϘʔσΟϯά ৽͍͠νʔϜʹࢀՃͨ͠ࡍɺͦͷνʔϜ͕ॴ༗͢ΔϦιʔε ϓϩδΣΫτΛѲ͢Δ·Ͱͷίετ ޓ͍ʹڠௐ͍ͯ͠ΔαʔϏεʹ͍ͭͯɺ͋ͪͪ͜ͷใʹΞΫ ηε͢Δඞཁ͕͋Δ എܠͱ՝
ͦ͜ͰSpotifyOSS "Backstage"
> “BackstageSpotifyͷඞཁੑ͔Βੜ·Ε·ͨ͠ɻ ࣄۀ͕͢ΔʹͭΕͯɺΠϯϑϥ͕அยԽ͠ɺΤϯδχΞͷੜ࢈ ੑ͕Լ͍ͯ͠Δ͜ͱʹؾ͖ͮ·ͨ͠ɻ νʔϜίʔυͷߏஙͱςετΛߦ͏ΘΓʹɺ࡞ۀ։࢝ʹඞཁͳ ใΛ୳͢͜ͱʹଟ͘ͷ࣌ؒΛඅ͍ͯ͠·ͨ͠ɻ" Backstageͱ ࢀর: https://backstage.io/docs/overview/background
αʔϏεɺιϑτΣΞɺπʔϧɺςετΛBackstageͰཧ ͲͷαʔϏεͰͲͷΑ͏ͳٕज़ελοΫ͕ΘΕ͍ͯΔͷ͔ ͋ΔαʔϏεʹ͓͍ͯɺ୭͕Φʔφʔͳͷ͔ αʔϏεͷར༻ऀͱͯ͠ɺରͷαʔϏεͷར༻ํ๏ Etc… Backstageͱ ࢀর: https://backstage.io/docs/overview/background
BackstageΛ։ൃऀϙʔλϧͱͯ͠ར༻ ใΛՄࢹԽ͢Δ
࣮͢Ͱʹಋೖ͞Ε͍ͯͨBackstage
ͱͱͷӡ༻ঢ়گ Πϯγσϯτൃੜ࣌ͷऀؔੑѲ͕త ֤ϦϙδτϦʹαʔϏεใͱΦʔφʔ໊Λొͨ͠ ͨͩ͠ӡ༻ʹ՝͕͋ͬͨ Φʔφʔใ͕ෆ͍ͯ͠Δʢ࿈བྷઌͳ͠ɺϝϯόʔෆ໌ͳͲʣ YAMLฤू͕ଟ͘ͷ։ൃऀʹͱͬͯෛՙ ԿΛॻ͍͍͍ͯͷ͔ෆ໌ ࣮͢Ͱʹಋೖ͞Ε͍ͯͨBackstage
BackstageͰ ςϯϓϨʔτΛ࡞Ͱ͖Δ
͜ΕΛͬͯ ొͷϋʔυϧΛԼ͛Δ
Backstage Software Templates
Backstage Software Templates ※ϦϙδτϦςϯϓϨʔτͱͯ͠͏έʔε͕ଟ͍ ใΛೖྗ͢ΔͱඞཁͳใΛࡌͯ͠ϦϙδτϦ࡞͞ΕΔ ʮXX repoΛίϐϖͯ͘͠Δͱ͍͍ΑʯͷΞϨ
Backstage Software Templates ࠓճʮYAML͠ΜͲ͍ʯʮԿΛॻ͔͘ෆ໌ʯͷղܾࡦͱͯ͠ར༻ Web UI্Ͱඞཁࣄ߲Λೖྗ͢Δ͚ͩͰYAMLࣗಈੜ ϨΠΞτύϥϝʔλͷѲʹ࣌ؒΛऔΒΕΔ͜ͱͳ͘ɺ։ ൃऀ͕؆୯ʹใΛొͰ͖Δ ඞཁͳใΛఏࣔͰ͖Δ ೖྗใΛςϯϓϨʔτΤϯδϯͰಈతʹมͰ͖Δ
AI͕ॻ͚ྑ͘ͳ͍ʁ ͱࢥͬͨΈͳ͞Μ
͜ͷऔΓΈ࣌ɺAI agent͕ࣾʹීٴ͍ͯ͠ͳ͔ͬͨ AI agentར༻Λલఏͱͨ͠߹ɺͦͷηοτΞοϓ͔Β։࢝ʹͳ Δϋʔυϧ͕͋ͬͨ TemplatesΛΘͣɺAI agentΛͬͯੜ͢Δ͜ͱͳ͍ ʢதͨͩͷYAMLͳͷͰʣ ඞཁͳใΛ࣮֬ʹੜͯ͠Β͑OK ൃද͍ͯ͠Δؒʹใ͕ݹ͘ͳΔڪΖ͍࣌ͩ͠……
※͏·͘ӡ༻Ͱ͖ΔͳΒྑ͍ͱࢥ͍·͢
ใͷूઌܾ·ͬͨ ͰԿΛొ͢Δ͖͔ʁ
ʮΦʔφʔ୭͔ʯΛಛఆ͢ΔͨΊʹ ͲͷνʔϜ͕ͲͷγεςϜαʔϏεʹΛ͍࣋ͬͯΔͷ͔ ͦͷνʔϜͲͷଞνʔϜͱؔ࿈͕͋Δͷ͔ ͦͷαʔϏεͷυΩϡϝϯτͲ͜ʹ͋Δͷ͔ Etc… ԿΛొ͢Δ͖͔ʁ
νʔϜτϙϩδʔͷߟ͑ํΛ ࠾༻
> “Ձ͋ΔιϑτΣΞΛૉૣ͘ಧ͚ΔదԠܕ৫ઃܭ” > “ݱʹ͓͚Δ৫ઃܭͱɺސ٬ͷʹԠ͑Δ͘ίϥϘϨʔ γϣϯ͢ΔͨΊͷٕज़Λઃܭ͢Δ͜ͱͰ͋Δ” νʔϜτϙϩδʔͱ ࢀর: νʔϜτϙϩδʔ Ձ͋ΔιϑτΣΞΛ͘͢ಧ͚ΔదԠܕ৫ઃܭ ɹɹ
φΦϛɾελϯϑΥʔυʰGuide to Organization Designʱ
ίϯΣΠͷ๏ଇʹج͍ͮͯ”ҙࣝతʹ”νʔϜߏͱΞʔΩςΫ νϟΛઃܭ͢Δ͜ͱ ͱʹ͔͘ૉૣ͘ϦϦʔε͢ΔͨΊʹνʔϜΛઃܭ͢Δ ೝෛՙΛཧ͢Δ͜ͱ νʔϜΛ͏·͘૬ޓ࡞༻ͤ͞Δ ڥքΛ໌֬ʹ͢Δ͜ͱͰ໌֬ʹ͢Δ νʔϜτϙϩδʔͱ
νʔϜ͕ιϑτΣΞͷΦʔφʔͱͳΔ ιϑτΣΞͷڥքαΠζΛνʔϜͷೝෛՙʹ߹ΘͤΔ దͳڥք͕ೝෛՙΛԼ͛Δ ൣғΛ߹Θ੍ͤͯݶ͢Δ νʔϜτϙϩδʔʹ͓͚ΔνʔϜϑΝʔετࢥߟ ࢀর: νʔϜτϙϩδʔ Ձ͋ΔιϑτΣΞΛ͘͢ಧ͚ΔదԠܕ৫ઃܭ
νʔϜಉ࢜ͷΓͱΓʹAPIͷΞΠσΞΛ֦ுͨ͠ͷ ίʔυɺόʔδϣϯཧɺυΩϡϝϯςʔγϣϯɺϓϥΫςΟ εɺίϛϡχέʔγϣϯɺؔ࿈ใ νʔϜͷൣғɺఏڙαʔϏεɺ࿈བྷํ๏Λ໌֬Խ ଞνʔϜ͔Βར༻͞ΕΔલఏͰఆٛ͢Δ ૬ख͙͢ʹཧղͰ͖Δ͔ɻ͙͢ʹཉ͍͠ใʹ౸ୡͰ͖Δ͔ νʔϜAPIͱ ࢀর: νʔϜτϙϩδʔ Ձ͋ΔιϑτΣΞΛ͘͢ಧ͚ΔదԠܕ৫ઃܭ
νʔϜAPIͱͯ͠ ใΛఆٛͯ͠ΈΔ
CODEOWNERSʹඥ໊ͮ͘લ Slackάϧʔϓϝϯγϣϯ໊ͱϝϯγϣϯID Slackνϟϯωϧ໊ͱϦϯΫ ϓϩδΣΫτཧπʔϧͷϦϯΫ αϒνʔϜ໊ νʔϜϝϯόʔϦετ νʔϜλΠϓʢEnablingɺstream-alignedͳͲʣ ྡਓʢར༻ऀɾඇར༻ऀʣͷνʔϜ໊ νʔϜAPIͱͯ͠ఆٛͨ͜͠ͱ GitHubݸਓ·ͨTeamΛ
ϦϙδτϦͷऀʹࢦఆͰ͖Δ
Backstage × νʔϜAPI
αʔϏεใΛҰݩཧ͢ΔϨΠϠʔͱͯ͠ͷBackstage ͦ͜ʹνʔϜใొ͞ΕΔ͜ͱͷϝϦοτ ௐࠪ࣌ؒͷॖ ΦϯϘʔσΟϯά࣌ؒͷॖ ίϥϘϨʔγϣϯ࣌ͷ࿈བྷ Backstage × νʔϜAPI
Backstage × νʔϜAPI
Backstage × νʔϜAPI
Backstage Software Templates Tips
ొਓ 1. Backstage ϦϙδτϦ Backstageͦͷͷ 2. ҙͷϦϙδτϦʢTemplatesίϯςϯπΛஔ͘ॴʣ template.yaml catalog-info.yaml(template༻) 3.
ϓϩμΫτͷϦϙδτϦʢαʔϏε͝ͱʹஔ͘ʣ catalog-info.yaml Tips ϑϩϯτΤϯυϓϥάΠϯͷ֦ ுBackstageʹมߋΛՃ͑Δ
Ͳ͏ͬͯTemplatesΛͭ͘Δͷ͔ Backstage Software Templates ࣗମ YAML 😨 ެࣜͷExample Λͥͻɻࠓͷ࣌ͳΒVibe coding
Ұ https://github.com/backstage/software-templates ςϯϓϨʔτΤϯδϯ Nunjucks ΛͬͯೖྗΛૠೖ͢Δ ݕূʹ Nunjucks ͷ PlaygroundΛ͓͏ https://nunjucks.r0b.io/ Tips: ҙͷϦϙδτϦ
Templates ίϯςϯπͷσΟϨΫτϦߏ └── team-api └── group ᵓ── content │ └──
catalog-info.yaml └── template.yaml Tips: ҙͷϦϙδτϦ BackstageͰೖྗ͞ΕΔ templateϑΝΠϧ NunjucksΛͬͨϑΝΠϧ system, component ͱ͍ͬͨผͷΧςΰϦ͕Ͱ͖Δ͔͠Εͳ͍ͷͰ "groupϦιʔε"ͱ໋໊ͯ͠
Tips: ҙͷϦϙδτϦ template.yaml
contentԼͷcatalog-info.yamlʹΛೖ͍ͯ͠Δ Tips: ҙͷϦϙδτϦcatalog-info.yaml
Array TagsͷΑ͏ʹ͍͔ͭ͋͘Δલఏͷͷ Arrayͷதʹ͞Βʹ߲ΛՃͰ͖Δ ui:field PickerΛ͔ͭͬͨೖྗิॿ Tips: ҙͷϦϙδτϦ template.yaml
templatesঢ়ଶͷcatalog-info.yaml Array forͰϧʔϓ IfذͰඞਢͰͳ͍߲Λ੍ޚ TemplatesͷܗNunjucks PlaygroundͰ Tips: template༻ͷcatalog-info.yaml
ϓϩμΫτϦϙδτϦͷσΟϨΫτϦߏ team_api └── group └── catalog-info.yaml Tips: ϓϩμΫτͷϦϙδτϦ ใ͕ೖ͞ΕͨϑΝΠϧ
࣮ࡍͷϖʔδ Tips
࣮ࡍͷϖʔδ Tips
LinksͳͲͷΟδΣοτɺϓϥάΠϯʹ͍ͭͯ BackstageOSSͷͨΊɺࣗͰΧελϜՄೳ දࣔ͢Δɾ͠ͳ͍ࣗ༝ CoreϥΠϒϥϦɾϓϥάΠϯReactͰ࣮ ๛ͳϓϥάΠϯ༗ ࣗͨͪͰ࣮Մೳ Tips
ݱ࣌ͰͷՌϙΠϯτ
ؔੑͷՄࢹԽ νʔϜͱγεςϜͷ1:Nؔͷදݱ Ұཡද͚ࣔͩͰͳཱ͍ମతͳใߏ ใؒͷؔ࿈ੑΛΑΓҰ୳ࡧ͕Մೳ ͜ͷνʔϜͲͷϦιʔεΛ୲͍ͯ͠Δ͔ݟ͑Δ ใొͷϋʔυϧ ٕज़తͳ͕ࣝͳͯ͘νʔϜใΛొͰ͖Δ ݱ࣌Ͱ࣮ݱͰ͖͍ͯΔϙΠϯτ
ࠓޙ͍͖ͬͯ͘͜ͱ
ଞνʔϜͷਁಁ ͕͍ࣗͯ͠ΔνʔϜҎ֎ొ͢Δ ొɾߋ৽࣌ɺΑΓͻͱͷख͕͔͔Βͳ͍Α͏ʹ͢ΔΈ ΦϯϘʔσΟϯάͷ׆༻ େΛѲ͠ͳ͕ΒɺࣗͰใΛ୳ࡧͰ͖ΔΑ͏ʹͳΔ ͞ΒͳΔࣗಈԽ ྫ: YAMLϑΝΠϧ͕ࣗಈతʹGitHubʹPush͞ΕΔ etc… ߋ৽ใΛͲ͏ͬͯऩू͢Δ͔
ͳ͘ɺ͘ബ͘ɺऔΓΈଓ͚Δඞཁ͕͋Δ
ࠓ͔ΒऔΓΊΔ͜ͱ
ೝෛՙΛ౿·͑ͨڥքઢΛݕ౼ʢνʔϜτϙϩδʔࢀরʣ ʢͷڥքઢ͕Ͱ͖ͨΒʣνʔϜAPIͷఆٛ ଞνʔϜʹެ։͖͢ใΛ໌֬ʹఆٛ͠ɺڞ௨ೝࣝΛ࡞Γ· ͢ɻ͜ΕνʔϜ͕গͳ͚Εಋೖ͕༰қ ΦʔφʔͱϦιʔεؔΛදݱͰ͖ΔΈΛಋೖ ϦϙδτϦʹରͯ͠ɺ࡞ॳظ͔ΒνʔϜใͱϦιʔεใ Λೖྗ͢ΔΑ͏ͳΈΛಋೖ͓ͯ͘͠ɻ͋ͱͰඦͷϦϙδ τϦʹ͍ΕΔίετ࿙ΕΛࢭͰ͖Δ ࠓ͔ΒऔΓΊΔ͜ͱ
·ͱΊ
BackstageʹΑΔใͷҰݩཧ 1:NؔͷՄࢹԽ νʔϜτϙϩδʔ: νʔϜAPIͷΞΠσΞΛར༻ͨ͠ใެ։ ใొͳΔ͔͘ΜͨΜʹ ෳࡶԽ͢ΔલʹઃܭΛ! ։ൃऀͷೝෛՙܰݮͷͨΊʹ
None