Pain of growing up, and moving to large scale
Vladimir Dejanović
Voxxed Days Bucharest 10Mar2017
@VladimirD_42@VoxxedBucharest
Let’s Meet
@VladimirD_42@VoxxedBucharest
Vladimir Dejanović
Agenda
@VladimirD_42@VoxxedBucharest
Agenda
@VladimirD_42@VoxxedBucharest
On what we concentrate
Agenda
@VladimirD_42@VoxxedBucharest
Growing Up
On what we concentrate
Agenda
@VladimirD_42@VoxxedBucharest
Deployment Process
Growing Up
On what we concentrate
Agenda
@VladimirD_42@VoxxedBucharest
Deployment Process
Growing Up
On what we concentrate
Tips
Agenda
@VladimirD_42@VoxxedBucharest
Deployment Process
Growing Up
On what we concentrate
QuestionsTips
On What We Concentrate
@VladimirD_42@VoxxedBucharest
On What We Concentrate
@VladimirD_42
What is the most interesting for you?
@VoxxedBucharest
On What We Concentrate
@VladimirD_42
What is the most interesting for you?
@VoxxedBucharest
Features
On What We Concentrate
@VladimirD_42
What is the most interesting for you?
@VoxxedBucharest
Features Ideas
On What We Concentrate
@VladimirD_42
What is the most interesting for you?
@VoxxedBucharest
Features IdeasDevelopment
On What We Concentrate
@VladimirD_42@VoxxedBucharest
On What We Concentrate
@VladimirD_42
When do you start thinking about Deployment
@VoxxedBucharest
On What We Concentrate
@VladimirD_42
When do you start thinking about Deployment
@VoxxedBucharest
From start
On What We Concentrate
@VladimirD_42
When do you start thinking about Deployment
@VoxxedBucharest
From start At the end
On What We Concentrate
@VladimirD_42
When do you start thinking about Deployment
@VoxxedBucharest
From start At the endAt some point in between
On What We Concentrate
@VladimirD_42
Deployment isn’t Product
@VoxxedBucharest
Growing Up
@VladimirD_42@VoxxedBucharest
Growing Up
@VladimirD_42@VoxxedBucharest
Growing Up
@VladimirD_42@VoxxedBucharest
Growing Up
@VladimirD_42@VoxxedBucharest
Important Questions
@VladimirD_42@VoxxedBucharest
Important Questions
@VladimirD_42@VoxxedBucharest
Will you know if something is broken ?
Important Questions
@VladimirD_42@VoxxedBucharest
Will you know if something is broken ?
Will you be able to fix it and how fast ?
Important Questions
@VladimirD_42@VoxxedBucharest
Will you know if something is broken ?
Will you be able to fix it and how fast ?
What impact will it have ?
Important Truths
@VladimirD_42@VoxxedBucharest
Important Truths
@VladimirD_42@VoxxedBucharest
The question isn’t if
Important Truths
@VladimirD_42@VoxxedBucharest
The question isn’t if , but when it will break
Important Truths
@VladimirD_42@VoxxedBucharest
The question isn’t if , but when it will break
System will break in unexpected ways
Important Truths
@VladimirD_42@VoxxedBucharest
The question isn’t if , but when it will break
System will break in unexpected ways
There is no test like huge number of users.
“Poor” man solution
@VladimirD_42@VoxxedBucharest
“Poor” man solution
@VladimirD_42
Manual or over custom scripts
@VoxxedBucharest
“Poor” man solution
@VladimirD_42
Manual or over custom scripts
No Fancy tools
@VoxxedBucharest
“Poor” man solution
@VladimirD_42
Manual or over custom scripts
No Fancy tools
@VoxxedBucharest
Having good performance not trivial
“Poor” man choice
@VladimirD_42@VoxxedBucharest
“Poor” man choice
@VladimirD_42
We do it like big boys directly in production
@VoxxedBucharest
“Poor” man choice
@VladimirD_42
We do it like big boys directly in production
It worked on my computer
@VoxxedBucharest
Blue/Green
@VladimirD_42@VoxxedBucharest
Blue/Green
@VladimirD_42@VoxxedBucharest
Blue/Green
@VladimirD_42@VoxxedBucharest
Blue/Green
@VladimirD_42@VoxxedBucharest
Load balancer
Blue/Green
@VladimirD_42@VoxxedBucharest
Load balancer
Blue/Green
@VladimirD_42@VoxxedBucharest
Load balancer
V1
Blue/Green
@VladimirD_42@VoxxedBucharest
Load balancer
V1 V2
Blue/Green
@VladimirD_42@VoxxedBucharest
Load balancer
V1 V2
Blue/Green
@VladimirD_42@VoxxedBucharest
Load balancer
V1 V2
Blue/Green
@VladimirD_42@VoxxedBucharest
Load balancer
V1 V2
RollBack
“Modern”
@VladimirD_42@VoxxedBucharest
“Modern”
@VladimirD_42@VoxxedBucharest
V1
V1
V1V1
V1
V1
V1
V1
V1V1
“Modern”
@VladimirD_42@VoxxedBucharest
V1
LoadBalancer
V1
V1V1
V1
V1
V1
V1
V1V1
“Modern”
@VladimirD_42@VoxxedBucharest
V1
LoadBalancer
V1
V1V1
V1
V1
V1
V1
V1V1
“Modern”
@VladimirD_42@VoxxedBucharest
V1
LoadBalancer
V1
V1V1
V1
V1
V1
V1
V1V1
“Modern”
@VladimirD_42@VoxxedBucharest
V1
LoadBalancer
V1
V2V2
V1
V1
V1
V1
V1V1
“Modern”
@VladimirD_42@VoxxedBucharest
V1
LoadBalancer
V1
V2V2
V1
V1
V1
V1
V1V1
“Modern”
@VladimirD_42@VoxxedBucharest
V1
LoadBalancer
V1
V2V2
V1
V1
V1
V1
V1V1
“Modern”
@VladimirD_42@VoxxedBucharest
V2
LoadBalancer
V1
V2V2
V1
V1
V1
V1
V1V2
“Modern”
@VladimirD_42@VoxxedBucharest
V2
LoadBalancer
V1
V2V2
V1
V1
V1
V1
V1V2
“Modern”
@VladimirD_42@VoxxedBucharest
V2
LoadBalancer
V2
V2V2
V2
V2
V2
V2
V2V2
“Modern”
@VladimirD_42@VoxxedBucharest
V2
LoadBalancer
V1
V2V2
V1
V1
V2
V1
V2V2
“Modern”
@VladimirD_42@VoxxedBucharest
V2
LoadBalancer
V1
V2V2
V1
V1
V2
V1
V2V2
“Modern”
@VladimirD_42@VoxxedBucharest
V2
LoadBalancer
V1
V2V2
V1
V1
V2
V1
V2V2
Canary Deployment
@VladimirD_42@VoxxedBucharest
Canary Deployment
@VladimirD_42@VoxxedBucharest
Canary Deployment
@VladimirD_42@VoxxedBucharest
Canary Deployment
@VladimirD_42@VoxxedBucharest
Canary Deployment
@VladimirD_42@VoxxedBucharest
V1V1
Canary Deployment
@VladimirD_42@VoxxedBucharest
V1V2
Canary Deployment
@VladimirD_42@VoxxedBucharest
V1V2
Canary Deployment
@VladimirD_42@VoxxedBucharest
V1V2
Canary Deployment
@VladimirD_42@VoxxedBucharest
V2
Tips
@VladimirD_42@VoxxedBucharest
Tips
@VladimirD_42
Easy / Painless
@VoxxedBucharest
Tips
@VladimirD_42
Easy / Painless
Fast
@VoxxedBucharest
Tips
@VladimirD_42
One Click or Automatic
@VoxxedBucharest
Tips
@VladimirD_42
One Click or Automatic
Often
@VoxxedBucharest
Tips
@VladimirD_42
Monitoring
@VoxxedBucharest
Tips
@VladimirD_42
Monitoring
Rollback
@VoxxedBucharest
Tips
@VladimirD_42
Having test is good
@VoxxedBucharest
Tips
@VladimirD_42
Having test is good
No replacement for real users
@VoxxedBucharest
Tips
@VladimirD_42
Automate as much as possible
@VoxxedBucharest
@VoxxedBucharest @VladimirD_42
Tips
@VladimirD_42
Systems will break in way you can’t predict
@VoxxedBucharest
Tips
@VladimirD_42
Deployment = Feedback
@VoxxedBucharest
Tips
@VladimirD_42
Lot of tools out there
@VoxxedBucharest
Tips
@VladimirD_42
Lot of tools out there
New Tech = New Complexity + Learning
@VoxxedBucharest
Tips
@VladimirD_42
Don’t underestimate poor man’s choice
@VoxxedBucharest
Tips
@VladimirD_42
Having
Development, Test, Staging and Production Environments is good
@VoxxedBucharest
Tips
@VladimirD_42
Bare Metal
vs
VM
@VoxxedBucharest
Tips
@VladimirD_42
Databases
@VoxxedBucharest
Questions
@VladimirD_42
[email protected]
@VladimirD_42@VoxxedBucharest
Thank You
@VladimirD_42@VoxxedBucharest