datawire.io 1
datawire.io
Three components of Microservices
2
Technology
Process
People
datawire.io
Process
3
datawire.io
Why is process so important?
4
datawire.io
Velocity comes from process, not architecture
5
datawire.io
Microservices: Service Oriented Development
What this means
Why it works
How to do it
6
datawire.io
Architecture vs Development
7
datawire.io
Engineering is Guess & Check
8
datawire.io
Cost of Guess/Check
9
datawire.io
Cost of Guess/Check
10
ModernDevelopment
PunchCards
Moore’s Law
datawire.io
Cost of Guess/Check
11
ServiceO.Development
ServiceO.Architecture
Cloud
datawire.io
Cheap Guess/Check merges roles
12
datawire.io
Software vs SaaS
13
VS
datawire.io
Microservices Process: Service Oriented Development
The output of the process:
● Continuously improving Service
The process:
● Guess (incremental improvements)
● Check (correctness + availability & user impact in production)
The tools:
● Deployment - make small guesses
● Observability - measure the impact on functionality, availability, users
● Resilience - ensure negative impacts are not catastrophic
14
datawire.io
Microservices Process: Service Oriented Development
Ignore architecture, focus on release frequency
As soon as you have users, adjust your process to measure user impact
Recognize that stability vs progress is a fundamental tradeoff
● for a single service…
15
datawire.io
People
16
datawire.io
Microservices People: Autonomous Teams
What this means
Why it works
How to do it
17
datawire.io
Cheap Guess/Check merges roles
18
datawire.io
Aggregate Health: God’s Eye View Harmful
19
A B C D EX
datawire.io
Two Perspectives
C’s problem: Is it worth it? D’s problem: Did I break C?
20
C DX
datawire.io
Two Solutions
Operational Responsibility System Visibility & Resilience
21
datawire.io
Microservices People: Autonomous Teams
Make your teams fully autonomous
Ignore technical boundaries, define services functionally
● who uses the service, and what does it help them do
God’s eye view is harmful
● decentralize the architecture & operations work to avoid organizational
bottlenecks
22
datawire.io
Technology
23
datawire.io
The tech stack
● Kubernetes -- infrastructure as configuration
● Docker -- build containers
● Envoy -- API gateway + L7 Router
24
datawire.io
My Application
25
API GW
(Envoy)
Auth
(auth0)
Tasks
Search
...
datawire.io
Demo
http://demo.d6e.co/tasks
26
datawire.io
Summary
People: small autonomous teams
Process: focus on release frequency
Technology: adopt on demand to fit your workflow
27

2017 Microservices Practitioner Virtual Summit: Move Fast, Make Things: how developers can successfully adopt microservices