2
pmoops
testersdevelopers
THE BUSINESS
pmoops
testersdevelopers
THE BUSINESS
6
7
8
data goes in here ->
ETL takes over here ->
<- no one knows what happens here
9
Concept Development Tested Approved Released
Idea
Concept Development Tested Approved Released
Idea
Concept Development Tested Approved Released
Idea
Concept Development Tested Approved Released
Idea
Concept Development Tested Approved Released
Idea
Concept Development Tested Approved Released
Idea
Concept Development Tested Approved Released
Idea
Concept Development Tested Approved Released
Idea
Concept Development Tested Approved Released
Idea
Concept Development Tested Approved Released
Idea
Concept Development Tested Approved Released
Idea
Concept Development Tested Approved Released
Idea
Idea
Concept Development Tested Approved Released
Idea
Idea
Concept Development Tested Approved Released
Idea
Idea
Concept Development Tested Approved Released
Idea
Idea
Concept Development Tested Approved Released
Idea
Idea
Concept Development Tested Approved Released
Idea
Idea
Concept Development Tested Approved Released
Idea
Idea
Concept Development Tested Approved Released
Idea
Idea
Concept Development Tested Approved Released
Idea
Idea
techniques tools
platforms languages
techniques tools
platforms languages
gated development
PMO
design up front
project branches
wormhole systems
silo’d functions
techniques tools
platforms languages
sqlserver
powershell
TFS
odd entity thing
gated development
PMO
design up front
project branches
wormhole systems
silo’d functions
visual studio
techniques tools
platforms languages
sqlserver
powershell
TFS
CLR
windows
odd entity thing
gated development
PMO
design up front
project branches
wormhole systems
silo’d functions
visual studio
techniques tools
platforms languages
sqlserver
powershell
TFS
CLR
windows
vb.net
odd entity thing
gated development
PMO
design up front
project branches
wormhole systems
silo’d functions
TSQL
(a small amount of c#)
visual studio
36
our heroes start their journey
CONSULTANTS!
HELL YEAH!
“the measure of a body's resistance to
changes in velocity”
39
inertia
inertiaorganisational
inertiatechnical
43
Start small, low risk to build trust
product teams
agile software development
service oriented architecture
pmoops
testersdevelopers
THE BUSINESS
product teams
45
product teams
46
Start small, low risk to build trust
product teams
agile software development
service oriented architecture
47
Start small, low risk to build trust
product teams
agile software development
service oriented architecture
Concept Development Tested Approved Released
Idea
agile software development
Concept Development Tested Approved Released
Idea
agile software development
Concept Development Tested Approved Released
Idea
agile software development
Concept Development Tested Approved Released
Idea
agile software development
Concept Development Tested Approved Released
Idea
agile software development
Concept Development Tested Approved Released
Idea
Idea
agile software development
Concept Development Tested Approved Released
Idea
Idea
agile software development
Concept Development Tested Approved Released
Idea
Idea
agile software development
Concept Development Tested Approved Released
Idea
Idea
agile software development
Concept Development Tested Approved Released
Idea
Idea
agile software development
58
Start small, low risk to build trust
product teams
agile software development
service oriented architecture
Concept Development Tested Approved Released
Idea
Idea
59
Start small, low risk to build trust
product teams
agile software development
service oriented architecture
Concept Development Tested Approved Released
Idea
Idea
Start small, low risk to build trust
Start small, low risk to build trust
62
Start small, low risk to build trust
product teams
agile software development
service oriented architecture
Concept Development Tested Approved Released
Idea
Idea
63
Start small, low risk to build trust
product teams
agile software development
service oriented architecture
Concept Development Tested Approved Released
Idea
Idea
service oriented architecture
service oriented architecture
66
service oriented architecture
smart endpoints and dumb pipes
67
Start small, low risk to build trust
product teams
agile software development
service oriented architecture
Concept Development Tested Approved Released
Idea
Idea
techniques tools
platforms languages
sqlserver
powershell
TFS
CLR
windows
vb.net
odd entity thing
gated development
PMO
design up front
project branches
wormhole systems
silo’d functions
TSQL
(a small amount of c#)
visual studio
product team
TDD agile
techniques tools
platforms languages
sqlserver
powershell
TFS
CLR
windows
vb.net
odd entity thing
gated development
PMO
design up front
project branches
wormhole systems
silo’d functions
TSQL
(a small amount of C#)
visual studio
product team
TDD
go cdgit
resharper
agile
techniques tools
platforms languages
sqlserver
powershell
TFS
CLR
windows
vb.net
odd entity thing
gated development
PMO
design up front
project branches
wormhole systems
silo’d functions
TSQL
(a small amount of C#)
visual studio
product team
TDD
go cdgit
resharper
C#
agile
71
separate products
conway’s law
microservices
event sourcing
monitoring
right tool for the job
72
separate products
conway’s law
microservices
event sourcing
monitoring
right tool for the job
separate products
separate products
home motor life
separate products
and cross-cutting business capabilities
home motor life
my account
76
separate products
conway’s law
microservices
event sourcing
monitoring
right tool for the job
77
separate products
conway’s law
microservices
event sourcing
monitoring
right tool for the job
conway’s law
conway’s law
conway’s law
“…organizations which design systems … are constrained to produce designs which are copies of the communication structure of those organizations”
Melvin Conway, 1968
conway’s law
83
separate products
conway’s law
microservices
event sourcing
monitoring
right tool for the job
84
separate products
conway’s law
microservices
event sourcing
monitoring
right tool for the job
Object
microservices
Object
Object
Object
Object
microservices
microservices
microservices
AS WE CHUNK UP DOMAINS, EACH DOMAIN SHOULD BE SMALL ENOUGH TO FIT IN MY HEAD
microservices
AND WHILE I HAVE A GIANT HEAD, ITS NOT FULL OF MUCH STUFF SO THATS OK...
microservices
92
separate products
conway’s law
microservices
event sourcing
monitoring
right tool for the job
93
separate products
conway’s law
microservices
event sourcing
monitoring
right tool for the job
event sourcing
96
separate products
conway’s law
microservices
event sourcing
monitoring
right tool for the job
97
separate products
conway’s law
microservices
event sourcing
monitoring
right tool for the job
monitoring
“the understanding of a specific cause
and effect in a specific context”
99
100
insight
101
operational insight
102
business insight
104
separate products
conway’s law
microservices
event sourcing
monitoring
right tool for the job
105
separate products
conway’s law
microservices
event sourcing
monitoring
right tool for the job
106
right tool for the job
right tool for the job
“Replaceable Component Architectures”
108
Dan North
right tool for the job
right tool for the job
right tool for the job
right tool for the job
separate products
conway’s law
microservices
event sourcing
monitoring
right tool for the job
113
in summary
114
techniques tools
platforms languages
product team
TDD
go cd
git
resharper
C#
agile
microservices
event sourcing
API onion CD
infra automation
conways law
mongodbcubism
D3rabbitmq
jasmine
phantomjs
newrelic
node.js CLR
HDFS windows
linux
F#vb.net
javascript
SASS
knockouterlang
reactive extensions
115
along the way we all learned some things
▫︎ events are awesome
▫︎ events suck
▫︎ taking on new languages is scary, but exciting
▫︎ because javascript (WAT?)
▫︎API design is really really important
▫︎ asynchronicity, wait(10.seconds()), is tedious
▫︎ silo’d metrics suck
▫︎ just saying “devops” doesn’t make it devops (and it’s really scary to devs and ops)
116
117
change takes longer than you think
118
#neverdone