Download - Rethink your infrastructure to rebuild your code

Transcript
Page 1: Rethink your infrastructure to rebuild your code

RETHINK YOUR INFRASTRUCTURE TO REBUILD YOUR CODE

Page 2: Rethink your infrastructure to rebuild your code

CODESHIP (LANDING PAGE SCREENSHOT)

Page 3: Rethink your infrastructure to rebuild your code

WHY DO WE BUILD TECHNOLOGY

Page 4: Rethink your infrastructure to rebuild your code

JOY OF BUILDING

Page 5: Rethink your infrastructure to rebuild your code

MAKE PEOPLE HAPPY

Page 6: Rethink your infrastructure to rebuild your code

HAVE AN IMPACT

Page 7: Rethink your infrastructure to rebuild your code

BUILD BUSINESS

Page 8: Rethink your infrastructure to rebuild your code

WHAT IS A GREAT PRODUCT WITH IMPACT

Page 9: Rethink your infrastructure to rebuild your code

MAKES MORE PRODUCTIVE

Page 10: Rethink your infrastructure to rebuild your code

BRINGS JOY

Page 11: Rethink your infrastructure to rebuild your code

CUSTOMER EXPECTATIONS CHANGE

Page 12: Rethink your infrastructure to rebuild your code

WE NEED TO REACT QUICKLY

Page 13: Rethink your infrastructure to rebuild your code

THEY TRUST US TO DELIVER

Page 14: Rethink your infrastructure to rebuild your code

NO TRUST = NO CUSTOMERS

Page 15: Rethink your infrastructure to rebuild your code

CHANGE IS A CONSTANT

Page 16: Rethink your infrastructure to rebuild your code

MARKET AND COMPETITION PRESSURE TO CHANGE

Page 17: Rethink your infrastructure to rebuild your code

Company

Product

Cust

omer

sM

arket/Competition

Page 18: Rethink your infrastructure to rebuild your code

NOT ONLY OUTSIDE PRESSURE TO CHANGE

Page 19: Rethink your infrastructure to rebuild your code

Company

Product

Cust

omer

sM

arket/Competition

Team

Process

Tech

Page 20: Rethink your infrastructure to rebuild your code

SPEED OF INNOVATION DEPENDS ON TEAM, PROCESS AND TECHNOLOGY

Page 21: Rethink your infrastructure to rebuild your code

Innovation

Team

Process Technology

Page 22: Rethink your infrastructure to rebuild your code

TECHNOLOGY AND PROCESS HAVE LARGE IMPACT

Page 23: Rethink your infrastructure to rebuild your code

THEY DEFINE WHAT’S POSSIBLE

Page 24: Rethink your infrastructure to rebuild your code

TECHNOLOGY DEFINES LIMITS OF PROCESS

Page 25: Rethink your infrastructure to rebuild your code

BUILD INFRASTRUCTURE WITH CHANGE IN MIND

Page 26: Rethink your infrastructure to rebuild your code

FEAR IS ENEMY OF CHANGE

Page 27: Rethink your infrastructure to rebuild your code

FEAR LEADS TO INERTIA

Page 28: Rethink your infrastructure to rebuild your code

BETTER PROCESS REDUCES FEAR

Page 29: Rethink your infrastructure to rebuild your code

BETTER PROCESSES NEED BETTER TECH

Page 30: Rethink your infrastructure to rebuild your code

COMPLEXITY DRIVES FEAR

Page 31: Rethink your infrastructure to rebuild your code

MONOLITHS TOO BIG TO INNOVATE

Page 32: Rethink your infrastructure to rebuild your code

PROCESS CAN’T COPE

Page 33: Rethink your infrastructure to rebuild your code

COMPLEXITY INCREASES

Page 34: Rethink your infrastructure to rebuild your code

TOO COMPLEX FOR PROCESS AND TECHNOLOGY

Page 35: Rethink your infrastructure to rebuild your code

SLOWER RELEASE CYCLES

Page 36: Rethink your infrastructure to rebuild your code

DOWNWARD SPIRAL

Page 37: Rethink your infrastructure to rebuild your code

BUILDING MONOLITH TOO EASY AT THE START

Page 38: Rethink your infrastructure to rebuild your code

BETTER TOOLING FOR SERVICE ORIENTED ARCHITECTURE

Page 39: Rethink your infrastructure to rebuild your code

PAAS MAKES SOA EASIER

Page 40: Rethink your infrastructure to rebuild your code

PAAS ON PREMISE OR CLOUD

Page 41: Rethink your infrastructure to rebuild your code

PAAS & IAAS

Page 42: Rethink your infrastructure to rebuild your code

STANDARDIZE WHEN POSSIBLE, ISOLATE WHEN NECESSARY

Page 43: Rethink your infrastructure to rebuild your code

Service 1 Service 2 Service 3

Service 4 Service 5 Service 6

non-standard application

Page 44: Rethink your infrastructure to rebuild your code

CONSISTENT MANAGEMENT NECESSARY BUT HARD

Page 45: Rethink your infrastructure to rebuild your code

MANAGING AND UPDATING SERVERS NOW THE PROBLEM

Page 46: Rethink your infrastructure to rebuild your code

THAT’S WHY CHEF AND PUPPET EXIST

Page 47: Rethink your infrastructure to rebuild your code

VERY COMPLEX TOOL FOR VERY COMPLEX PROBLEM

Page 48: Rethink your infrastructure to rebuild your code

WHY NOT IGNORE THE PROBLEM

Page 49: Rethink your infrastructure to rebuild your code

WE TREAT SERVERS LIKE NOTEBOOKS

Page 50: Rethink your infrastructure to rebuild your code

WE LOVE OUR NOTEBOOKS •IMPORTANT INFORMATION •HISTORY •WE WANT TO PRESERVE THEM

Page 51: Rethink your infrastructure to rebuild your code

SERVERS SHOULD BE POST-ITSTHROW AWAY WHEN NOT NEEDED

Page 52: Rethink your infrastructure to rebuild your code

THINK APPLICATIONS, NOT SERVERS

Page 53: Rethink your infrastructure to rebuild your code

NUMBER OF SERVERS IS IRRELEVANT, QUALITY OF SERVICE IS IMPORTANT

Page 54: Rethink your infrastructure to rebuild your code

SERVER IS REPLACEABLE

Page 55: Rethink your infrastructure to rebuild your code

REPLACE, DON’T UPDATE

Page 56: Rethink your infrastructure to rebuild your code

VIRTUALIZATION IS CHEAP AND FAST: AWS, DIGITAL OCEAN, DOCKER

Page 57: Rethink your infrastructure to rebuild your code

IT’S CHEAP, BECAUSE YOUR TIME IS EXPENSIVE

Page 58: Rethink your infrastructure to rebuild your code

SMALL SERVICE = SMALL DEPLOYMENT

Page 59: Rethink your infrastructure to rebuild your code

CONSISTENT DEPLOYMENT NECESSARY

Page 60: Rethink your infrastructure to rebuild your code

CLONE FROM ONE GOOD SOURCE

Page 61: Rethink your infrastructure to rebuild your code

Deployment

New Release Test Build and Verify

Image Store

897gsd9fg

5123hkhk

74kdf7oefhf

ydo4m2jd8

Page 62: Rethink your infrastructure to rebuild your code

Create Image

New Release Test Build and Verify

Image Store

897gsd9fg

5123hkhk

74kdf7oefhf

ydo4m2jd8

90jh0hjfdh

Page 63: Rethink your infrastructure to rebuild your code

Current State

Loadbalancers

Application Cluster 897gsd9fg

Database

Page 64: Rethink your infrastructure to rebuild your code

Deployment

Loadbalancers

Application Cluster 897gsd9fg

Database

Application Cluster 90jh0hjfdh

Page 65: Rethink your infrastructure to rebuild your code

Switch

Loadbalancers

Application Cluster 897gsd9fg

Database

Application Cluster 90jh0hjfdh

Page 66: Rethink your infrastructure to rebuild your code

Destroy when no errors

Loadbalancers

Application Cluster 897gsd9fg

Database

Application Cluster 90jh0hjfdh

Page 67: Rethink your infrastructure to rebuild your code

New State

Loadbalancers

Database

Application Cluster 90jh0hjfdh

Page 68: Rethink your infrastructure to rebuild your code

CREATE ONCE THEN CLONE

Page 69: Rethink your infrastructure to rebuild your code

IMMUTABLE INFRASTRUCTURE

Page 70: Rethink your infrastructure to rebuild your code

LIKE CLASSES AND INSTANCES

Page 71: Rethink your infrastructure to rebuild your code

SILOED STATE

Page 72: Rethink your infrastructure to rebuild your code

Siloed State

Loadbalancers

Application Cluster 897gsd9fg

Database

Application Cluster 90jh0hjfdhStateless

State Silo

Page 73: Rethink your infrastructure to rebuild your code

REDUCES FEAR AS ANYTHING CAN BE REPLACED ANYTIME

Page 74: Rethink your infrastructure to rebuild your code

DEPLOYMENT AND ROLLBACK ARE THE SAME ACTION

Page 75: Rethink your infrastructure to rebuild your code

STILL EARLY BUT TOOLING IS AVAILABLE

Page 76: Rethink your infrastructure to rebuild your code

PACKER.IO

Page 77: Rethink your infrastructure to rebuild your code

DOCKER

Page 78: Rethink your infrastructure to rebuild your code

!

FLYNN, TERRAFORM, KUBERNETES, COREOS, …

Page 79: Rethink your infrastructure to rebuild your code

HEROKU, AWS EB, …

Page 80: Rethink your infrastructure to rebuild your code

IMMUTABLE EVERYWHERE

Page 81: Rethink your infrastructure to rebuild your code

RECAP

Page 82: Rethink your infrastructure to rebuild your code

CHANGE IS CONSTANT

Page 83: Rethink your infrastructure to rebuild your code

Company

Product

Cust

omer

sM

arket/Competition

Team

Process

Tech

Page 84: Rethink your infrastructure to rebuild your code

Innovation

Team

Process Technology

Page 85: Rethink your infrastructure to rebuild your code

TECHNOLOGY SHAPES WHATS POSSIBLE

Page 86: Rethink your infrastructure to rebuild your code

BUILD INFRASTRUCTURE WITH CONSTANT CHANGE IN MIND

Page 87: Rethink your infrastructure to rebuild your code

AUTOMATE TESTS AND DEPLOYMENT FROM REPOSITORY

Page 88: Rethink your infrastructure to rebuild your code

BUILD SMALL SERVICES THAT YOU CAN MANAGE

Page 89: Rethink your infrastructure to rebuild your code

IMMUTABLE INFRASTRUCTURE AND AUTOMATED REPLACEMENT TO LOWER FEAR

Page 90: Rethink your infrastructure to rebuild your code

CONTINUOUS DELIVERY IMPLICIT AND NOT A HURDLE

Page 91: Rethink your infrastructure to rebuild your code

BUILD FOR CHANGE