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
High-Impact refactors keeping the lights on
Search
Ticketea Engineering
September 23, 2017
Programming
1
700
High-Impact refactors keeping the lights on
First presented at PyConES 2017
Ticketea Engineering
September 23, 2017
Tweet
Share
More Decks by Ticketea Engineering
See All by Ticketea Engineering
Python Static Typing with MyPy
ticketeaeng
0
340
Ticketea, scaling a highly transactional business
ticketeaeng
0
240
Introducción a React Native
ticketeaeng
0
210
Virtual Lines with Asyncio
ticketeaeng
0
140
Cloud and Devops at ticketea
ticketeaeng
0
190
Developing our Box Office app
ticketeaeng
0
97
Architecture and Devops 2015
ticketeaeng
1
440
ticketea internals
ticketeaeng
2
600
Other Decks in Programming
See All in Programming
Web エンジニアが JavaScript で AI Agent を作る / JSConf JP 2025 sponsor session
izumin5210
4
1.6k
PHPライセンス変更の議論を通じて学ぶOSSライセンスの基礎
matsuo_atsushi
0
150
Feature Flags Suck! - KubeCon Atlanta 2025
phodgson
0
120
例外処理を理解して、設計段階からエラーを見つけやすく、起こりにくく #phpconfuk
kajitack
12
5.9k
Swift Concurrency 年表クイズ
omochi
3
230
GraalVM Native Image トラブルシューティング機能の最新状況(2025年版)
ntt_dsol_java
0
140
MCPサーバー「モディフィウス」で変更容易性の向上をスケールする / modifius
minodriven
8
1.5k
レイトレZ世代に捧ぐ、今からレイトレを始めるための小径
ichi_raven
0
350
TVerのWeb内製化 - 開発スピードと品質を両立させるまでの道のり
techtver
PRO
3
960
Phronetic Team with AI - Agile Japan 2025 closing
hiranabe
2
590
Claude Code on the Web を超える!? Codex Cloud の実践テク5選
sunagaku
0
550
「正規表現をつくる」をつくる / make "make regex"
makenowjust
1
420
Featured
See All Featured
The Art of Programming - Codeland 2020
erikaheidi
56
14k
Code Review Best Practice
trishagee
72
19k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
55
3.1k
Code Reviewing Like a Champion
maltzj
527
40k
Large-scale JavaScript Application Architecture
addyosmani
514
110k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
11
930
KATA
mclloyd
PRO
32
15k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
34
2.5k
What's in a price? How to price your products and services
michaelherold
246
12k
Mobile First: as difficult as doing things right
swwweet
225
10k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
253
22k
Documentation Writing (for coders)
carmenintech
76
5.1k
Transcript
High-impact refactors keeping the lights on @Kartones Diego Muñoz
01. What 02. Why 03. How 04. When Agenda
What
What
What
Why
Why
Why
How
Mega structures How
Mega structures How
DB High-frequency selling How CMS API CRUD Current (simplified) flow
How Extend, not modify* API DB High-frequency selling CRUD CMS
REDIS EVENT BUS EVENT BUS APU *do modify if needed to allow extension
Patterns & Practices - Parallel change - Strangler How API
DB High-frequency selling CRUD CMS REDIS EVENT BUS EVENT BUS APU
How API DB High-frequency selling CRUD CMS REDIS EVENT BUS
EVENT BUS APU Patterns & Practices - Event Bus - Cursor-based - N writers/readers
How API DB High-frequency selling CRUD CMS REDIS EVENT BUS
EVENT BUS APU Patterns & Practices - Event Sourcing
How API DB High-frequency selling CRUD CMS REDIS EVENT BUS
EVENT BUS APU “Build exciting things with boring nice technologies” - Python 3.6 · Strongly typed (Mypy) · Dockerized - Redis with LUA - AWS Kinesis github.com/ticketea/pynesis
When
When Continous Iteration - No hard deadline - Desired: soon
:-)
Latest benchmark: ~4100 ops/sec - Single CPU core, 20k tickets,
50k concurrent users - Attacking internal API - Room for optimization When
Current status: - Free events - Paid events on their
way · Play safe (money involved!) · Lots of payment methods When
Release plan: - Now: Hack (Special payment method) - 1.0:
Feature Toggling When
Rollout plan 01. Canary: big free event 02. Dark launch:
on paid events 03. B/G: Gradual switch When
THE END Thanks! @Kartones