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
Iterate and Ship
Search
Armin Ronacher
May 10, 2016
Programming
4
430
Iterate and Ship
How we iterate and ship at Sentry.
Armin Ronacher
May 10, 2016
Tweet
Share
More Decks by Armin Ronacher
See All by Armin Ronacher
Agentic Coding: The Future of Software Development with Agents
mitsuhiko
0
430
Do Dumb Things
mitsuhiko
0
820
No Assumptions
mitsuhiko
0
310
The Complexity Genie
mitsuhiko
0
270
The Catch in Rye: Seeding Change and Lessons Learned
mitsuhiko
0
380
Runtime Objects in Rust
mitsuhiko
0
370
Rust at Sentry
mitsuhiko
0
530
Overcoming Variable Payloads to Optimize for Performance
mitsuhiko
0
250
Rust API Design Learnings
mitsuhiko
0
620
Other Decks in Programming
See All in Programming
tsgolintはいかにしてtypescript-goの非公開APIを呼び出しているのか
syumai
7
2.4k
AIエンジニアリングのご紹介 / Introduction to AI Engineering
rkaga
8
3.4k
「コードは上から下へ読むのが一番」と思った時に、思い出してほしい話
panda728
PRO
39
26k
Navigation 3: 적응형 UI를 위한 앱 탐색
fornewid
1
470
Rubyで鍛える仕組み化プロヂュース力
muryoimpl
0
200
ELYZA_Findy AI Engineering Summit登壇資料_AIコーディング時代に「ちゃんと」やること_toB LLMプロダクト開発舞台裏_20251216
elyza
2
660
Giselleで作るAI QAアシスタント 〜 Pull Requestレビューに継続的QAを
codenote
0
300
AI時代を生き抜く 新卒エンジニアの生きる道
coconala_engineer
1
450
AIコーディングエージェント(Gemini)
kondai24
0
280
0→1 フロントエンド開発 Tips🚀 #レバテックMeetup
bengo4com
0
410
Flutter On-device AI로 완성하는 오프라인 앱, 박제창 @DevFest INCHEON 2025
itsmedreamwalker
1
160
複雑なUI設計への銀の弾丸 「オブジェクト指向UIデザイン」
teamlab
PRO
2
110
Featured
See All Featured
The untapped power of vector embeddings
frankvandijk
1
1.5k
What Being in a Rock Band Can Teach Us About Real World SEO
427marketing
0
150
SEO in 2025: How to Prepare for the Future of Search
ipullrank
3
3.3k
Fireside Chat
paigeccino
41
3.8k
We Have a Design System, Now What?
morganepeng
54
7.9k
Self-Hosted WebAssembly Runtime for Runtime-Neutral Checkpoint/Restore in Edge–Cloud Continuum
chikuwait
0
240
Stop Working from a Prison Cell
hatefulcrawdad
273
21k
Amusing Abliteration
ianozsvald
0
72
Max Prin - Stacking Signals: How International SEO Comes Together (And Falls Apart)
techseoconnect
PRO
0
52
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.3k
AI Search: Implications for SEO and How to Move Forward - #ShenzhenSEOConference
aleyda
1
1k
What’s in a name? Adding method to the madness
productmarketing
PRO
24
3.8k
Transcript
Armin Ronacher iterate and ship
Armin Ronacher @mitsuhiko Flask / Sentry / Lektor
̿ SENTRY ̀
None
None
None
̿ THE TWO PRODUCTS ̀
sentry vs ‘getsentry’
sentry open source repo on-premise monthly releases
‘getsentry’ billing & quotas depends on sentry hourly deploys
̿ THE GOALS ̀
deploy in seconds be unable to screw up and if
you do: instant rollbacks
tag a release once a month
̿ WORKFLOW ̀
commit review integration deploy
requires good test coverage requires good local setup makes it
easier for newcomers
̿ COMMITTING ̀
lint on commit!
1 Release / Month 5 Deployments / Day On Prem:
Hosted:
None
master is stable
1. branch off master 2. pull request 3. merge
all the pull requests
!! AVOID DOWNTIME !!
postgres <3 transactional ddl, concurrent indexes, cheap alter table add
nullable columns
bidirectional compatibility
separation of state and connections
̿ CONTINUOUS TESTING ̀
sentry travis-ci.org test all the code
‘getsentry’ travis-ci.com test code relevant for us
̿ CONTINUOUS DELIVERY ̀
FREIGHT wait for travis > build > ship
bidirectional communication with the main slack channel
dev never matches prod :(
thus: fast rollbacks! (backwards + forwards compatibility)
̿ CODE STRUCTURE ̀
large systems are organisms
not all things will run the same code at the
same time
data schema ~ code behavior
break up larger features
feature flag it! (we shipped some code to on-prem we
backed out)
̿ MOVING PARTS ̀
keep dev basic: fewer parts
do not diverge dev from prod too much
virtual machines and docker are not an acceptable dev environment
̿ REPRODUCIBLE BUILDS ̀
pip freeze / npm shrinkwrap
nothing is more frustrating than a failed deploy because a
dependency of a dependency of a dependency of a dependency pushed out a broken release
build once > ship to many
̿ MONITOR FAILURES ̀
associate failures to users
map support requests to failures
use sentry :-)
̿ FRIENDLY ROBOTS ̀
replace yourself!
bots and webhooks
github hooks
notify to communication hub
̿ BETTER CLIMATE ̀
the more robots, the better the integration, the smaller the
fear of doing damage
If you can launch a feature on your first day
of work that's motivating
also: happy customers
Q&A