LESSONS FROM A POLYGLOT PORTFOLIO
james lewis jalewis@thoughtworks.com @boicy
LESSONS FROM A POLYGLOT PORTFOLIO james lewis - - PowerPoint PPT Presentation
LESSONS FROM A POLYGLOT PORTFOLIO james lewis jalewis@thoughtworks.com @boicy 2 pmo ops THE BUSINESS testers developers pmo ops THE BUSINESS testers developers 6 7 data goes in here -> ETL takes over here -> <- no one
LESSONS FROM A POLYGLOT PORTFOLIO
james lewis jalewis@thoughtworks.com @boicy
pmo
testers developers THE BUSINESS
pmo
testers developers THE BUSINESS
data goes in here -> ETL takes over here -> <- no one knows what happens here
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
gated development PMO design up front project branches wormhole systems silo’d functions visual studio
techniques tools platforms languages
sqlserver powershell TFS CLR windows
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
gated development PMO design up front project branches wormhole systems silo’d functions TSQL (a small amount of c#) visual studio
CONSULTANTS! HELL YEAH!
“the measure of a body's resistance to changes in velocity”
39inertia
inertia
inertia technical
Start small, low risk to build trust product teams agile software development service oriented architecture
pmo
testers developers THE BUSINESS
product teams
product teams
Start small, low risk to build trust product teams agile software development service oriented architecture
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
Start small, low risk to build trust product teams agile software development service oriented architecture
Concept Development Tested Approved Released Idea IdeaStart small, low risk to build trust product teams agile software development service oriented architecture
Concept Development Tested Approved Released Idea IdeaStart small, low risk to build trust
Start small, low risk to build trust
Start small, low risk to build trust product teams agile software development service oriented architecture
Concept Development Tested Approved Released Idea IdeaStart small, low risk to build trust product teams agile software development service oriented architecture
Concept Development Tested Approved Released Idea Ideaservice oriented architecture
service oriented architecture
service oriented architecture
smart endpoints and dumb pipes
Start small, low risk to build trust product teams agile software development service oriented architecture
Concept Development Tested Approved Released Idea Ideatechniques tools platforms languages
sqlserver powershell TFS CLR windows vb.net
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
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 cd git resharper agile
techniques tools platforms languages
sqlserver powershell TFS CLR windows vb.net
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 cd git resharper C# agile
separate products conway’s law microservices event sourcing monitoring right tool for the job
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
separate products conway’s law microservices event sourcing monitoring right tool for the job
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
Melvin Conway, 1968
conway’s law
separate products conway’s law microservices event sourcing monitoring right tool for the job
separate products conway’s law microservices event sourcing monitoring right tool for the job
Object
microservices
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
separate products conway’s law microservices event sourcing monitoring right tool for the job
separate products conway’s law microservices event sourcing monitoring right tool for the job
event sourcing
separate products conway’s law microservices event sourcing monitoring right tool for the job
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”
99insight
business insight
separate products conway’s law microservices event sourcing monitoring right tool for the job
separate products conway’s law microservices event sourcing monitoring right tool for the job
right tool for the job
right tool for the job
“Replaceable Component Architectures”
108Dan 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
techniques tools platforms languages
product team TDD go cd git resharper C# agile microservices event sourcing API onion CD infra automation conways law mongodb cubism D3 rabbitmq jasmine phantomjs newrelic node.js CLR HDFS windows linux F# vb.net javascript SASS knockout erlang reactive extensions
along the way we all learned some things
scary to devs and ops)
116change takes longer than you think
james lewis jalewis@thoughtworks.com @boicy