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
Stress-free software releases
Search
Tosho Trajanov
November 10, 2019
Technology
0
290
Stress-free software releases
Tosho Trajanov
November 10, 2019
Tweet
Share
More Decks by Tosho Trajanov
See All by Tosho Trajanov
The click that saves weekends
tstrv
0
39
Other Decks in Technology
See All in Technology
自動テストのコストと向き合ってみた
qa
0
110
PLaMoの事後学習を支える技術 / PFN LLMセミナー
pfn
PRO
9
3.8k
関係性が駆動するアジャイル──GPTに人格を与えたら、対話を通してふりかえりを習慣化できた話
mhlyc
0
130
組織観点からIAM Identity CenterとIAMの設計を考える
nrinetcom
PRO
1
170
Modern_Data_Stack最新動向クイズ_買収_AI_激動の2025年_.pdf
sagara
0
200
社内お問い合わせBotの仕組みと学び
nish01
0
160
GA technologiesでのAI-Readyの取り組み@DataOps Night
yuto16
0
270
Oracle Base Database Service 技術詳細
oracle4engineer
PRO
11
77k
AI駆動開発を推進するためにサービス開発チームで 取り組んでいること
noayaoshiro
0
160
研究開発部メンバーの働き⽅ / Sansan R&D Profile
sansan33
PRO
3
20k
stupid jj tricks
indirect
0
7.9k
ZOZOのAI活用実践〜社内基盤からサービス応用まで〜
zozotech
PRO
0
170
Featured
See All Featured
Building Adaptive Systems
keathley
43
2.8k
Learning to Love Humans: Emotional Interface Design
aarron
274
40k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.4k
The Art of Programming - Codeland 2020
erikaheidi
56
14k
Side Projects
sachag
455
43k
Designing for humans not robots
tammielis
254
25k
Agile that works and the tools we love
rasmusluckow
331
21k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.2k
Scaling GitHub
holman
463
140k
Stop Working from a Prison Cell
hatefulcrawdad
271
21k
Rails Girls Zürich Keynote
gr2m
95
14k
Large-scale JavaScript Application Architecture
addyosmani
514
110k
Transcript
Stress-free software releases BGPHP 2019, Sofia
@TsTrv CTO Adeva - An Exclusive Developers Network Fully-distributed network
Worked with startups and Fortune 500 companies
@TsTrv Building strong engineering processes
@TsTrv Nirvana in software engineering
@TsTrv State of the application ー Legacy, enterprise application built
in PHP ー Being developed for over 10 years ー 0% test coverage ー 10 engineers - to keep it alive
@TsTrv The problems ー Unable to ship as fast as
we needed ー Never ending bug fixing cycles ー Full-regression testing took 3-4 weeks ー Releases once monthly ー Scheduled on weekends
@TsTrv Formula for stress and burnout
@TsTrv Continuous Everything
@TsTrv
@TsTrv Objections ー Complexity ー Risk ー Control ー Habit
@TsTrv Continuous Everything
@TsTrv Continuous Everything… Nirvana
@TsTrv Continuous Everything… Nirvana
@TsTrv Continuous Everything… Nirvana
@TsTrv Continuous Everything ー If you fail, you fail small
ー If something breaks, you know to fix immediately ー Fewer bugs ー Release new features faster ー Reduce Costs
@TsTrv What could potentially go wrong?
@TsTrv What could potentially go wrong right?
@TsTrv Legacy code ー Strangler Pattern ー Branch By Abstraction
Technique
@TsTrv Strangler Pattern
@TsTrv Branch By Abstraction
@TsTrv Automated Tests
@TsTrv Automated tests ー Assume legacy works flawlessly ?! ー
Utilize new modules to Increase the code coverage
@TsTrv Pipeline
@TsTrv Deployment vs Release ー Decoupling ー Feature Toggles –
Dark Launching – Phased rollout
@TsTrv
@TsTrv Deployment Strategy ー Blue Green ー Canary deployment
@TsTrv Blue Green Deployment
@TsTrv Blue Green Deployment
@TsTrv Canary Deployment
@TsTrv Mindset ー Everyone should participate ー Not a DevOps
work only ー Continuous improvement, day by day
@TsTrv Actions ー Wrapped up the legacy code ー Faked
automated tests for the legacy ー Identified pipeline ー Decoupled releases from deployment ー Created a culture of continuous improvement
@TsTrv Wins ー Release code to production multiple times daily.
ー Production bugs lowered by 80% ー From bug report to deploy < 30 mins ー No more weekends work
@TsTrv Always strive for continuous improvement, instead of perfection.
@TsTrv Thank you