RETHINK YOUR INFRASTRUCTURE 
TO REBUILD YOUR CODE
CODESHIP (LANDING PAGE 
SCREENSHOT)
WHY DO WE BUILD 
TECHNOLOGY
JOY OF BUILDING
MAKE PEOPLE HAPPY
HAVE AN IMPACT
BUILD BUSINESS
WHAT IS A GREAT PRODUCT 
WITH IMPACT
MAKES MORE PRODUCTIVE
BRINGS JOY
CUSTOMER EXPECTATIONS 
CHANGE
WE NEED TO REACT QUICKLY
THEY TRUST US TO DELIVER
NO TRUST = NO CUSTOMERS
CHANGE IS A CONSTANT
MARKET AND COMPETITION 
PRESSURE TO CHANGE
Company 
Product 
Customers 
Market/Competition
NOT ONLY OUTSIDE 
PRESSURE TO CHANGE
Company 
Product 
Customers 
Market/Competition 
Team 
Process 
Tech
SPEED OF INNOVATION DEPENDS 
ON TEAM, PROCESS AND 
TECHNOLOGY
Team 
Innovation 
Process Technology
TECHNOLOGY AND PROCESS 
HAVE LARGE IMPACT
THEY DEFINE WHAT’S 
POSSIBLE
TECHNOLOGY DEFINES 
LIMITS OF PROCESS
BUILD INFRASTRUCTURE 
WITH CHANGE IN MIND
FEAR IS ENEMY OF CHANGE
FEAR LEADS TO INERTIA
BETTER PROCESS REDUCES 
FEAR
BETTER PROCESSES 
NEED BETTER TECH
COMPLEXITY DRIVES FEAR
MONOLITHS TOO 
BIG TO INNOVATE
PROCESS CAN’T COPE
COMPLEXITY INCREASES
TOO COMPLEX FOR PROCESS 
AND TECHNOLOGY
SLOWER RELEASE CYCLES
DOWNWARD SPIRAL
BUILDING MONOLITH TOO 
EASY AT THE START
BETTER TOOLING FOR 
SERVICE ORIENTED ARCHITECTURE
PAAS MAKES SOA EASIER
PAAS ON PREMISE OR 
CLOUD
PAAS & IAAS
STANDARDIZE WHEN POSSIBLE, 
ISOLATE WHEN NECESSARY
Service 1 Service 2 Service 3 
Service 4 Service 5 Service 6 
non-standard 
application
CONSISTENT MANAGEMENT 
NECESSARY BUT HARD
MANAGING AND UPDATING 
SERVERS NOW THE PROBLEM
THAT’S WHY CHEF AND 
PUPPET EXIST
VERY COMPLEX TOOL FOR 
VERY COMPLEX PROBLEM
WHY NOT IGNORE 
THE PROBLEM
WE TREAT SERVERS LIKE NOTEBOOKS
WE LOVE OUR NOTEBOOKS 
•IMPORTANT INFORMATION 
•HISTORY 
•WE WANT TO PRESERVE THEM
SERVERS SHOULD BE POST-ITS 
THROW AWAY WHEN NOT NEEDED
THINK APPLICATIONS, 
NOT SERVERS
NUMBER OF SERVERS IS 
IRRELEVANT, QUALITY OF SERVICE 
IS IMPORTANT
SERVER IS REPLACEABLE
REPLACE, DON’T UPDATE
VIRTUALIZATION IS 
CHEAP AND FAST: 
AWS, DIGITAL OCEAN, DOCKER
IT’S CHEAP, BECAUSE YOUR 
TIME IS EXPENSIVE
SMALL SERVICE 
= 
SMALL DEPLOYMENT
CONSISTENT DEPLOYMENT 
NECESSARY
CLONE FROM ONE GOOD SOURCE
Deployment 
New Release Test Build and 
Verify 
Image Store 
897gsd9fg 
5123hkhk 
ydo4m2jd8 
74kdf7oefhf
Create Image 
New Release Test Build and 
Verify 
Image Store 
90jh0hjfdh 
897gsd9fg 
5123hkhk 
ydo4m2jd8 
74kdf7oefhf
Current State 
Loadbalancers 
Application Cluster 
897gsd9fg 
Database
Deployment 
Loadbalancers 
Application Cluster 
897gsd9fg 
Database 
Application Cluster 
90jh0hjfdh
Switch 
Loadbalancers 
Application Cluster 
897gsd9fg 
Application Cluster 
90jh0hjfdh 
Database
Destroy when no errors 
Loadbalancers 
Application Cluster 
897gsd9fg 
Application Cluster 
90jh0hjfdh 
Database
New State 
Loadbalancers 
Application Cluster 
90jh0hjfdh 
Database
CREATE ONCE 
THEN CLONE
IMMUTABLE 
INFRASTRUCTURE
LIKE CLASSES AND 
INSTANCES
SILOED STATE
Siloed State 
Loadbalancers 
Application Cluster 
897gsd9fg 
90jh0hjfdh Stateless 
State Silo 
Application Cluster 
Database
REDUCES FEAR AS ANYTHING 
CAN BE REPLACED ANYTIME
DEPLOYMENT AND ROLLBACK 
ARE THE SAME ACTION
STILL EARLY BUT TOOLING IS 
AVAILABLE
PACKER.IO
DOCKER
! 
FLYNN, TERRAFORM, KUBERNETES, 
COREOS, …
HEROKU, AWS EB, …
IMMUTABLE EVERYWHERE
RECAP
CHANGE IS CONSTANT
Company 
Product 
Customers 
Market/Competition 
Team 
Process 
Tech
Team 
Innovation 
Process Technology
TECHNOLOGY SHAPES 
WHATS POSSIBLE
BUILD INFRASTRUCTURE WITH 
CONSTANT CHANGE IN MIND
AUTOMATE TESTS AND 
DEPLOYMENT FROM REPOSITORY
BUILD SMALL SERVICES 
THAT YOU CAN MANAGE
IMMUTABLE INFRASTRUCTURE AND 
AUTOMATED REPLACEMENT TO 
LOWER FEAR
CONTINUOUS DELIVERY 
IMPLICIT AND NOT A HURDLE
BUILD FOR CHANGE

Rethink your infrastructure to rebuild your code