5. The average life expectancy of a
Fortune 500 company has declined
from around 75 years half a century
ago to less than 15 years today.
Deloitte Shift Index
@burrsutter - bit.ly/microjuly2018
6. By 2020, more than 75% of the
S&P 500 will be companies
that we have not heard of yet.
Professor Richard Foster,
Yale University, in Lean Enterprise
@burrsutter - bit.ly/microjuly2018
7. By 2020 every business
will become a digital
predator or digital prey.
Nigel Fenwick,
Forrester Research, 2015
@burrsutter - bit.ly/microjuly2018
8. 87% of surveyed executives
believe digital technologies
will disrupt their industries …
MIT Sloan Management Review, 2016
@burrsutter - bit.ly/microjuly2018
9. … yet only 44% indicated their
organizations were taking appropriate
measures to avert disruption.
MIT Sloan Management Review, 2016
@burrsutter - bit.ly/microjuly2018
10. Only 11% of organizations across industries
indicated their existing in-house talent has
the competitive skills necessary for success
in the digital economy.
MIT Sloan Management Review, 2016
@burrsutter - bit.ly/microjuly2018
12. “With great power, there
must also come—
great responsibility.”
—SPIDERMAN (STAN LEE)
@burrsutter - bit.ly/microjuly2018
13. It is about the Journey
Self-Service,
On-Demand,
Elastic,
Infrastructure
as
Code
(Cloud)
Re-Org to
DevOps
Automation
Puppet, Chef,
Ansible
and/or
Kubernetes
CI & CD
Deployment
Pipeline
Advanced
Deployment
Techniques
Silicon
Valley
DotCom
Startup
Microservices
@burrsutter - bit.ly/microjuly2018
14. @burrsutter
You Must Be This Tall
1. Self-Service, on-demand, elastic infrastructure as code
(how many days/weeks to provision a new VM?)
2. Dev vs Ops
(who is on the pager for production app outage?)
3. Automation
(phoenix vs snowflake?)
4. CI & CD
5. Deployment Pipeline
http://martinfowler.com/bliki/MicroservicePrerequisites.html
25. DevOps Cast of Characters
@burrsutter - bit.ly/microjuly2018
26. More DevOps Cast of Characters
@burrsutter - bit.ly/microjuly2018
27. 1. How many days or weeks do you have to
wait for a VM?
2. How many tickets need to be filed?
3. How many managers need to approve it?
4. What if a house builder had to wait
days/weeks for a hammer or some nails?
5. What signal does this send to the people
who need the resources?
Why do expensive resources
like developers wait so long for
inexpensive resources like VMs?
@burrsutter - bit.ly/microjuly2018
28. You need self-service, API-driven (ticketless),
quota managed, infrastructure on-demand
@burrsutter - bit.ly/microjuly2018
31. Jez Humble on Continuous Integration
▪ Software (trunk) is always deployable
▪ Everyone is checking into trunk daily (at
least)—not feature branches
▪ If the build breaks, it’s fixed in 10 minutes
(all hands on deck)
▪ A new engineer can be on-boarded in 1
day—with a production-like environment on
the developer workstation
▪ Deployment is a low-risk, push-button affair
@burrsutter - bit.ly/microjuly2018
32. Go Fast, Fail Fast, Fix Fast
DEVELOPMENT QA STAGING PRODUCTION ROUTER USERS
BUILD
SCM
@burrsutter - bit.ly/microjuly2018
33. 3 months to 1 week deployments
Fast Monolith - NOT Microservices
https://developers.redhat.com/blog/2016/10/27/the-fast-moving-monolith-how-we-sped-up-delivery-from-every-three-months-to-every-week/
@burrsutter - bit.ly/microjuly2018
34. Do you need to deploy more than once
a week?
Why do you wish to break up your team
of 8 developers, so they can each have
their own microservice?
@burrsutter - bit.ly/microjuly2018
35. 1. Deployment Independence - updates to an individual
microservice have no negative impact to any other component of
the system. Optimized for Replacement
2. Organized around business capabilities
3. Products not Projects
4. API Focused
5. Smart endpoints and dumb pipes
6. Decentralized Governance
7. Decentralized Data Management
8. Infrastructure Automation (infrastructure as code)
9. Design for failure
10. Evolutionary Design
Microservice Principles/Characteristics
@burrsutter - bit.ly/microjuly2018
36. Continuous
Integration
via XP
1999
AWS EC2
2006
DropWizard
May 2011
Agile
Manifesto
Feb
2001
NETFLIX
to AWS
2010
Ribbon
March 2012
Hystrix
March 2012
Eureka
July 2012
Microservices
Assess
Thoughtworks
Radar
March 2012
Spring Boot
Sept 2013
Microservices
Defined
Thoughtworks
Fowler, Lewis
March 2014
Kubernetes
June 2014
Java EE6
2009
DevOps
2009
Docker
March
2013
Short History of Microservices
@burrsutter - bit.ly/microjuly2018
55. Fallacies of Distributed Computing
• The Network is Reliable
• Latency is zero
• Bandwidth is infinite
• Topology does not change
• There is one administrator
• Transport cost is zero
• The network is homogeneous
https://en.wikipedia.org/wiki/Fallacies_of_distributed_computing
@burrsutter - bit.ly/microjuly2018
62. “Our ancestors called it
magic, but you call it
[computer] science.
I come from a land where
they are one and the same.”
—THOR
@burrsutter - bit.ly/microjuly2018