SlideShare une entreprise Scribd logo
1  sur  127
Télécharger pour lire hors ligne
How to break apart a
monolithic system safely
without destroying your team
Matthew Skelton, Skelton Thatcher Consulting
@matthewpskelton
06 June 2017, London DevOps meetup, Facebook London - #londondevops
Today
Cognitive load for teams
‘Monolith’
Code Forensics
Team-first boundaries
Monolith-splitting recipe
For now, let’s forget:
Microservices
CQRS / Event Sourcing
Queues
(Architectural changes)
Team-first digital transformation
30+ organisations
UK, US, EU, India, China
We build modern capabilities
by mentoring your teams
How to break apart a
monolithic system safely
without destroying your
team
Safer, more rapid changes
to software systems
(Business Agility)
A ‘team-first’ approach to
software subsystem
boundaries
TEAM
TEAM
capabilities
appetite & aptitude
understanding
responsibilities
(assumption)
the team is stable, slowly
changing, and long-lived
#NoProjects
Conway’s Law
“organizations which design
systems ... are constrained to
produce designs which are copies
of the communication structures of
these organizations”
– Mel Conway, 1968
http://www.melconway.com/Home/Conways_Law.html
Front-end
developers
Back-end
developers
‘Reverse Conway’
Tobbe Gyllebring (@drunkcod)
homomorphic force
(#Conway  #Yawnoc)
HT @allankellynet
(same) (shape)
Cognitive load for teams
Cognitive load
the total amount of
mental effort being used in
the working memory
(see Sweller, 1988)
Cognitive load
Intrinsic
Extraneous (Irrelevant )
Germane (Relevant)
‘Hacking Your Head’: Jo Pearce
See http://www.slideshare.net/JoPearce5/hacking-your-head-managing-information-overload-45-mix
@jdpearce
We have SCIENCE!
Science since 1988 (!)
• Driskell et al, 1999 ‘Does Stress Lead to a Loss of Team Perspective?’ Group Dynamics:
Theory, Research, and Practice 3, no. 4 (1999): 291.
• Fan et al, 2010 ‘Learning HMM-Based Cognitive Load Models for Supporting Human-Agent
Teamwork’. Cognitive Systems Research 11, no. 1 (2010): 108–119.
• Ilgen & Hollenbeck, 1993 ‘Effective Team Performance under Stress and Normal Conditions:
An Experimental Paradigm, Theory and Data for Studying Team Decision Making in
Hierarchical Teams with Distributed Expertise’. DTIC Document, 1993.
• Johnston et al, 2002 ‘Application of Cognitive Load Theory to Developing a Measure of Team
Decision Efficiency’. DTIC Document, 2002.
• Sweller, John, 1994 ‘Cognitive Load Theory, Learning Difficulty, and Instructional Design’.
Learning and Instruction 4 (1994): 295–312.
• Sweller, John, 1988. ‘Cognitive Load during Problem Solving: Effects on Learning’. Cognitive
Science 12, no. 2 (1988): 257–285.
“stress impacts team
performance … by narrowing
or weakening the team-level
perspective required for
effective team behavior.”
– Driskell et al, 1999
Group Dynamics: Theory, Research, and Practice 1999, Vol. 3, No. 4,291-302
(not just ‘pop’ science!)
‘Monolith’
monolith
μόνο λίθος
“single stone”
Reiner Flassig - CC BY-SA 2.0 de - Wikipedia
“Don’t start with a monolith
when your goal is a
microservices architecture”
– Stefan Tilkov, innoQ
http://martinfowler.com/articles/dont-start-monolith.html
“Start monolithic and extract”
– Tammer Saleh, Pivotal
https://www.infoq.com/presentations/cloud-anti-patterns
A ‘team-first’ approach to
software subsystem
boundaries
Types of software monoliths
•Application monolith
•Joined at the DB
•Monolithic build (rebuild everything)
•Monolithic releases (coupled)
•Monolithic thinking (standardisation)
Application
monolith
Single block of code
Deployed as a unit
Joined at
the DB
Difficult to change
separately (but not
impossible)
Risk is (probably)
elevated
Chris Collyer, http://www.stone-circles.org.uk/stone/pentreifan.htm
Monolithic
builds
One gigantic CI build
just to get a new
version of any
component
Monolithic
releases
Smaller components
bundled together into a
‘release’
Monolithic
thinking
‘One-size-fits-all’ for
teams
Assumption that
minimising variation is
A Good Thing
Dangers of splitting a
monolith
•Reduced domain consistency
•Data duplication (unintentional)
•Additional operational complexity due to
distributed system and async messaging
•Degraded UX across the product
Splitting a
monolith
Reiner Flassig - CC BY-SA 2.0 de - Wikipedia
Choose the right
technique for splitting
Understand the nature
of the monolith
‘Fracture planes’ for code
•Business domain bounded context
•Regulatory compliance
•Change cadence
•Risk
•Performance isolation
•User personas
•Team location
‘Fracture planes’ for code
Ask:
Could we consume this thing as a
service?
‘Fracture planes’ for code
Ask:
Could we provide this thing as a
service?
Code Forensics
Forensics
Your Code as a
Crime Scene
Adam Tornhill
Adam Tornhill
Code, Crime, Complexity:
Analyzing software with
forensic psychology
Adam Tornhill
TEDxTrondheim
youtube.com/watch?v=qJ_hplxTYJw
‘Code Maat’ tool
Adam Tornhill, http://www.adamtornhill.com/articles/crimescene/codeascrimescene.htm
Code City plus Code Maat forensics
Beware of badly-named
subsystems
"information-poor abstract
names are magnets for extra
[unwanted] responsibilities"
– Adam Tornhill
p.185, Your Code as a Crime Scene
Team-first boundaries
DevOpsTopologies.com
Team types
Component team
Platform / ’substrate’ team
Supporting / ‘productivity’ team
Product/Feature team
Team types
devopstopologies.com
Platform / ’substrate’ team
Product/Feature team
Team types
devopstopologies.com
Component team
Platform / ’substrate’ team
Product/Feature team
Team types
devopstopologies.com
Component team
Platform / ’substrate’ team
Product/Feature team
Supporting / ‘productivity’ team
Code repositories
Align repositories to subsystem
boundaries
Avoid monolithic-y repos like TFS*
* Don’t get me started on TFS, grrr…
Code repositories
Repo 1 Build Test Deploy Run
Repo 2 Build Test Deploy Run
Repo 3 Build Test Deploy Run
“You can use a monorepo only if
your organisation has published a
scientific paper on Computer
Science. Otherwise, use one repo
per deployable runnable thing.”
– Matthew Skelton
LondonCD meetup group, 11 Oct 2016 ☺
Find natural or available
‘fracture planes’ for splitting
a monolith
(with the team in mind)
When not to split a monolith
•‘Heritage’ ERP system (‘cloudified’)
•No native Unit Test framework
•20-30 min startup times
•VMs need 56GB RAM (yes)
•CI builds take 50 mins
Monolith-splitting recipe
Tried and tested!
Monolith-splitting recipe
1. Instrument the monolith – logging
2. Grok data flows and fault responses
3. Align teams to available segments
4. Split off segments one-by-one
Instrument the monolith
Instrument the monolith
Instrument the monolith
search by
event
Event ID
{Delivered,
InTransit,
Arrived}
transaction
trace
Correlation ID
612999958…
Technical
Domain
public enum EventID
{
// Badly-initialised logging data
NotSet = 0,
// An unrecognised event has occurred
UnexpectedError = 10000,
ApplicationStarted = 20000,
ApplicationShutdownNoticeReceived = 20001,
PageGenerationStarted = 30000,
PageGenerationCompleted = 30001,
MessageQueued = 40000,
MessagePeeked = 40001,
BasketItemAdded = 60001,
BasketItemRemoved = 60002,
CreditCardDetailsSubmitted = 70001,
// ...
}
BasketItemAdded = 60001
BasketItemRemoved = 60002
Instrument the monolith
Correlation ID Logs
Event ID
use logging as a
channel/vector to
make distributed systems
more testable
use logging as a
channel/vector to
make distributed systems
more testable
Grok data flows and fault responses
Grok data flows and fault responses
Correlation ID
Event ID
Unexpected
collaborating
subsystems
Undetected
fault condition
Grok data flows and fault responses
Correlation ID
Event ID
Adjust
subsystem
boundaries
Fix poor fault
responses
runbooktemplate.infoRun Book dialogue sheets
Align teams to available segments
Align teams to available segments
Align teams to available segments
Map to
business
domain
Align teams to available segments
Identify likely
components
or ‘platform’
elements
Split off segments one-by-one
Split off segments one-by-one
Split off segments one-by-one
Separate:
- Builds
- Infrastructure
- Deployments
- Versions
- Lifecycle
Team needs / responsibilities /
capabilities come first
use logging as a
channel/vector to
make distributed systems
more testable
Invest in
Build & Release Engineering
Monolith-splitting recipe *
1. Instrument the monolith – logging
2. Grok data flows and fault responses
3. Align teams to available segments
4. Split off segments one-by-one
(5. Invest in Build & Release Engineering)
* The simplistic version
Monolith-splitting recipe *
1. Instrument
2. Grok behaviour
3. Align teams
4. Split off segments
5. Invest in Build & Release
* The simplistic version
Determine monolith type
(Apply ‘Code Forensics’)
Find ‘fracture planes’
Assess cognitive load for teams
Use the monolith-splitting recipe
How to break apart a
monolithic system safely
without destroying your team
Training: 1-day workshop
Splitting monolithic software safely
without destroying the team
training@skeltonthatcher.com
Industry experience
Industry experience
Examples from recent work with clients
Different monoliths
Different ‘fracture planes’
Software for R&D teams
Customers: over 80% of top 20
global pharma companies
2014:
Monolithic: builds, releases
Pharma GxP: traceability
Changes slow and tricky
Fracture plane: business domain
Fracture plane: technology
Compose with packages
Logging for insights
Technology splits
Improved traceability
Major UK broadcaster (TV + online)
Increasing digital delivery of content
2014:
Wide mix of technologies
Need for visibility of changes
Need for rapid turnaround
Fracture planes: read-only, location & cadence
Split off Reporting (read-only)
Split on change cadence
Increased change throughput
UK’s second largest
credit reference agency
Customers: major banks + large orgs
2014:
6-weekly monolithic release
Outage-sensitive customers
Fracture planes: risk & business domain
Split releases based on risk
Align teams to value streams
More rapid release cadence
Software for Internal Comms
Customers: FTSE 100 & Fortune 1000
2015:
Successful system (monolithic)
ISO 27001 compliance
Aim to expand the org (x N)
Fracture plane: business domain
Optimise split for team
engagement & personas
Minimise ISO 27001 footprint
Aided organisation expansion
Determine monolith type
(Apply ‘Code Forensics’)
Find ‘fracture planes’
Assess cognitive load for teams
Use the monolith-splitting recipe
How to break apart a
monolithic system safely
without destroying your team
Training: 1-day workshop
Splitting monolithic software safely
without destroying the team
training@skeltonthatcher.com
Further material
Books & articles
• Working Effectively with Legacy Code, by Michael Feathers
• Building Microservices by Sam Newman (O’Reilly, 2015)
• Managing Cognitive Load for Team Learning by Jo Pearce
http://12devsofxmas.co.uk/2015/12/day-3-managing-cognitive-load-
for-team-learning/
• Continuous Delivery with Windows and .NET by Matthew Skelton and
Chris O’Dell (O’Reilly, 2016) http://cdwithwindows.net/
• Team Guide to Software Operability by Matthew Skelton and Rob
Thatcher (Skelton Thatcher Publications, 2016)
http://operabilitybook.com/
• Ye Olde Monolith by Pter Pilgrim https://dzone.com/articles/ye-olde-
monolith
Training
• From Monolith to Microservices (online training) – Sam Newman,
author of Building Microservices
http://www.oreilly.com/live-training/from-monolith-to-
microservices.html
• Run Book template & Run Book dialogue sheets
http://runbooktemplate.info/
Talks & slides
• Hacking Your Head – Managing Information Overload, by Jo
Pearce - http://www.slideshare.net/JoPearce5/hacking-your-
head-managing-information-overload-45-mix /
http://conferences.oreilly.com/oscon/open-source-
eu/public/schedule/detail/53013
• Principles of Microservices by Sam Newman @ Devoxx 2015
https://www.youtube.com/watch?v=PFQnNFe27kU
Research papers
• Driskell, James E., Eduardo Salas, and Joan Johnston. ‘Does Stress Lead to a Loss of Team
Perspective?’ Group Dynamics: Theory, Research, and Practice 3, no. 4 (1999): 291.
• Fan, Xiaocong, Po-Chun Chen, and John Yen. ‘Learning HMM-Based Cognitive Load Models for
Supporting Human-Agent Teamwork’. Cognitive Systems Research 11, no. 1 (2010): 108–119.
• Ilgen, Daniel R., and John R. Hollenbeck. ‘Effective Team Performance under Stress and Normal
Conditions: An Experimental Paradigm, Theory and Data for Studying Team Decision Making in
Hierarchical Teams with Distributed Expertise’. DTIC Document, 1993.
http://oai.dtic.mil/oai/oai?verb=getRecord&metadataPrefix=html&identifier=ADA284683.
• Johnston, Joan H., Stephen M. Fiore, Carol Paris, and C. A. Smith. ‘Application of Cognitive Load Theory
to Developing a Measure of Team Decision Efficiency’. DTIC Document, 2002.
http://oai.dtic.mil/oai/oai?verb=getRecord&metadataPrefix=html&identifier=ADA525820.
• Sweller, John. ‘Cognitive Load Theory, Learning Difficulty, and Instructional Design’. Learning and
Instruction 4 (1994): 295–312.
• Sweller, John. ‘Cognitive Load during Problem Solving: Effects on Learning’. Cognitive Science 12, no. 2
(1988): 257–285.
Determine monolith type
(Apply ‘Code Forensics’)
Find ‘fracture planes’
Assess cognitive load for teams
Use the monolith-splitting recipe
How to break apart a
monolithic system safely
without destroying your team
thank you
Matthew Skelton
@matthewpskelton
skeltonthatcher.com

Contenu connexe

Similaire à Teams and monoliths - Matthew Skelton - London DevOps June 2017

Teams and monoliths - Matthew Skelton - Agile in the City Bristol 2016
Teams and monoliths - Matthew Skelton - Agile in the City Bristol 2016Teams and monoliths - Matthew Skelton - Agile in the City Bristol 2016
Teams and monoliths - Matthew Skelton - Agile in the City Bristol 2016Skelton Thatcher Consulting Ltd
 
How to break apart a monolithic system safely without destroying your team - ...
How to break apart a monolithic system safely without destroying your team - ...How to break apart a monolithic system safely without destroying your team - ...
How to break apart a monolithic system safely without destroying your team - ...Matthew Skelton
 
Teams and monoliths - Matthew Skelton - Velocity EU 2016
Teams and monoliths - Matthew Skelton - Velocity EU 2016Teams and monoliths - Matthew Skelton - Velocity EU 2016
Teams and monoliths - Matthew Skelton - Velocity EU 2016Skelton Thatcher Consulting Ltd
 
How and why to design your teams for modern software - Sheffield DevOps - Jul...
How and why to design your teams for modern software - Sheffield DevOps - Jul...How and why to design your teams for modern software - Sheffield DevOps - Jul...
How and why to design your teams for modern software - Sheffield DevOps - Jul...Matthew Skelton
 
Agile leadership practices for PIONEERS
 Agile leadership practices for PIONEERS Agile leadership practices for PIONEERS
Agile leadership practices for PIONEERSStefan Haas
 
Provisioning Toolchain Introduction for Velocity Online Conference (March 2010)
Provisioning Toolchain Introduction for Velocity Online Conference (March 2010)Provisioning Toolchain Introduction for Velocity Online Conference (March 2010)
Provisioning Toolchain Introduction for Velocity Online Conference (March 2010)dev2ops
 
How and why to design your teams for modern software systems - Agile in Leeds...
How and why to design your teams for modern software systems - Agile in Leeds...How and why to design your teams for modern software systems - Agile in Leeds...
How and why to design your teams for modern software systems - Agile in Leeds...Skelton Thatcher Consulting Ltd
 
Most Useful Design Patterns
Most Useful Design PatternsMost Useful Design Patterns
Most Useful Design PatternsSteven Smith
 
Forget monoliths vs microservices - focus on Team Cognitive Load - Team Topol...
Forget monoliths vs microservices - focus on Team Cognitive Load - Team Topol...Forget monoliths vs microservices - focus on Team Cognitive Load - Team Topol...
Forget monoliths vs microservices - focus on Team Cognitive Load - Team Topol...Matthew Skelton
 
Monoliths vs Microservices is the Wrong Question; Start with Team Cognitive L...
Monoliths vs Microservices is the Wrong Question; Start with Team Cognitive L...Monoliths vs Microservices is the Wrong Question; Start with Team Cognitive L...
Monoliths vs Microservices is the Wrong Question; Start with Team Cognitive L...Manuel Pais
 
DevoxxUK 2016: "DevOps: Microservices, containers, platforms, tooling... Oh y...
DevoxxUK 2016: "DevOps: Microservices, containers, platforms, tooling... Oh y...DevoxxUK 2016: "DevOps: Microservices, containers, platforms, tooling... Oh y...
DevoxxUK 2016: "DevOps: Microservices, containers, platforms, tooling... Oh y...Daniel Bryant
 
Team Topologies - how and why to design your teams - AllDayDevOps 2017
Team Topologies - how and why to design your teams - AllDayDevOps 2017Team Topologies - how and why to design your teams - AllDayDevOps 2017
Team Topologies - how and why to design your teams - AllDayDevOps 2017Matthew Skelton
 
Beyond the Spotify Model - Team Topologies - Tech.rocks - 2020-12-10 - Matthe...
Beyond the Spotify Model - Team Topologies - Tech.rocks - 2020-12-10 - Matthe...Beyond the Spotify Model - Team Topologies - Tech.rocks - 2020-12-10 - Matthe...
Beyond the Spotify Model - Team Topologies - Tech.rocks - 2020-12-10 - Matthe...Matthew Skelton
 
Access tufts leveraging_designthinking_enterprisearchitecture_nercomp_3-23-2016
Access tufts leveraging_designthinking_enterprisearchitecture_nercomp_3-23-2016Access tufts leveraging_designthinking_enterprisearchitecture_nercomp_3-23-2016
Access tufts leveraging_designthinking_enterprisearchitecture_nercomp_3-23-2016Ricardo Amador
 
A Model-Based Systems Engineering Approach to Portfolio Management
A Model-Based Systems Engineering Approach to Portfolio ManagementA Model-Based Systems Engineering Approach to Portfolio Management
A Model-Based Systems Engineering Approach to Portfolio ManagementElizabeth Steiner
 
Forget 'Monoliths vs Microservices'; focus on Team Cognitive Load @ The Futur...
Forget 'Monoliths vs Microservices'; focus on Team Cognitive Load @ The Futur...Forget 'Monoliths vs Microservices'; focus on Team Cognitive Load @ The Futur...
Forget 'Monoliths vs Microservices'; focus on Team Cognitive Load @ The Futur...Manuel Pais
 
Go Best Practices – Interfaces, Packages and APIs
Go Best Practices – Interfaces, Packages and APIsGo Best Practices – Interfaces, Packages and APIs
Go Best Practices – Interfaces, Packages and APIsMarcus Kohlberg
 
accessTufts_Leveraging_DesignThinking_EnterpriseArchitecture_NERCOMP_3-23-201...
accessTufts_Leveraging_DesignThinking_EnterpriseArchitecture_NERCOMP_3-23-201...accessTufts_Leveraging_DesignThinking_EnterpriseArchitecture_NERCOMP_3-23-201...
accessTufts_Leveraging_DesignThinking_EnterpriseArchitecture_NERCOMP_3-23-201...EshaSharma71
 

Similaire à Teams and monoliths - Matthew Skelton - London DevOps June 2017 (20)

Teams and monoliths - Matthew Skelton - Agile in the City Bristol 2016
Teams and monoliths - Matthew Skelton - Agile in the City Bristol 2016Teams and monoliths - Matthew Skelton - Agile in the City Bristol 2016
Teams and monoliths - Matthew Skelton - Agile in the City Bristol 2016
 
How to break apart a monolithic system safely without destroying your team - ...
How to break apart a monolithic system safely without destroying your team - ...How to break apart a monolithic system safely without destroying your team - ...
How to break apart a monolithic system safely without destroying your team - ...
 
Teams and monoliths - Matthew Skelton - Velocity EU 2016
Teams and monoliths - Matthew Skelton - Velocity EU 2016Teams and monoliths - Matthew Skelton - Velocity EU 2016
Teams and monoliths - Matthew Skelton - Velocity EU 2016
 
Teams and monoliths - Matthew Skelton - LondonCD 2016
Teams and monoliths - Matthew Skelton - LondonCD 2016Teams and monoliths - Matthew Skelton - LondonCD 2016
Teams and monoliths - Matthew Skelton - LondonCD 2016
 
How and why to design your teams for modern software - Sheffield DevOps - Jul...
How and why to design your teams for modern software - Sheffield DevOps - Jul...How and why to design your teams for modern software - Sheffield DevOps - Jul...
How and why to design your teams for modern software - Sheffield DevOps - Jul...
 
Agile leadership practices for PIONEERS
 Agile leadership practices for PIONEERS Agile leadership practices for PIONEERS
Agile leadership practices for PIONEERS
 
Provisioning Toolchain Introduction for Velocity Online Conference (March 2010)
Provisioning Toolchain Introduction for Velocity Online Conference (March 2010)Provisioning Toolchain Introduction for Velocity Online Conference (March 2010)
Provisioning Toolchain Introduction for Velocity Online Conference (March 2010)
 
How and why to design your teams for modern software systems - Agile in Leeds...
How and why to design your teams for modern software systems - Agile in Leeds...How and why to design your teams for modern software systems - Agile in Leeds...
How and why to design your teams for modern software systems - Agile in Leeds...
 
Design patterns
Design patternsDesign patterns
Design patterns
 
Most Useful Design Patterns
Most Useful Design PatternsMost Useful Design Patterns
Most Useful Design Patterns
 
Forget monoliths vs microservices - focus on Team Cognitive Load - Team Topol...
Forget monoliths vs microservices - focus on Team Cognitive Load - Team Topol...Forget monoliths vs microservices - focus on Team Cognitive Load - Team Topol...
Forget monoliths vs microservices - focus on Team Cognitive Load - Team Topol...
 
Monoliths vs Microservices is the Wrong Question; Start with Team Cognitive L...
Monoliths vs Microservices is the Wrong Question; Start with Team Cognitive L...Monoliths vs Microservices is the Wrong Question; Start with Team Cognitive L...
Monoliths vs Microservices is the Wrong Question; Start with Team Cognitive L...
 
DevoxxUK 2016: "DevOps: Microservices, containers, platforms, tooling... Oh y...
DevoxxUK 2016: "DevOps: Microservices, containers, platforms, tooling... Oh y...DevoxxUK 2016: "DevOps: Microservices, containers, platforms, tooling... Oh y...
DevoxxUK 2016: "DevOps: Microservices, containers, platforms, tooling... Oh y...
 
Team Topologies - how and why to design your teams - AllDayDevOps 2017
Team Topologies - how and why to design your teams - AllDayDevOps 2017Team Topologies - how and why to design your teams - AllDayDevOps 2017
Team Topologies - how and why to design your teams - AllDayDevOps 2017
 
Beyond the Spotify Model - Team Topologies - Tech.rocks - 2020-12-10 - Matthe...
Beyond the Spotify Model - Team Topologies - Tech.rocks - 2020-12-10 - Matthe...Beyond the Spotify Model - Team Topologies - Tech.rocks - 2020-12-10 - Matthe...
Beyond the Spotify Model - Team Topologies - Tech.rocks - 2020-12-10 - Matthe...
 
Access tufts leveraging_designthinking_enterprisearchitecture_nercomp_3-23-2016
Access tufts leveraging_designthinking_enterprisearchitecture_nercomp_3-23-2016Access tufts leveraging_designthinking_enterprisearchitecture_nercomp_3-23-2016
Access tufts leveraging_designthinking_enterprisearchitecture_nercomp_3-23-2016
 
A Model-Based Systems Engineering Approach to Portfolio Management
A Model-Based Systems Engineering Approach to Portfolio ManagementA Model-Based Systems Engineering Approach to Portfolio Management
A Model-Based Systems Engineering Approach to Portfolio Management
 
Forget 'Monoliths vs Microservices'; focus on Team Cognitive Load @ The Futur...
Forget 'Monoliths vs Microservices'; focus on Team Cognitive Load @ The Futur...Forget 'Monoliths vs Microservices'; focus on Team Cognitive Load @ The Futur...
Forget 'Monoliths vs Microservices'; focus on Team Cognitive Load @ The Futur...
 
Go Best Practices – Interfaces, Packages and APIs
Go Best Practices – Interfaces, Packages and APIsGo Best Practices – Interfaces, Packages and APIs
Go Best Practices – Interfaces, Packages and APIs
 
accessTufts_Leveraging_DesignThinking_EnterpriseArchitecture_NERCOMP_3-23-201...
accessTufts_Leveraging_DesignThinking_EnterpriseArchitecture_NERCOMP_3-23-201...accessTufts_Leveraging_DesignThinking_EnterpriseArchitecture_NERCOMP_3-23-201...
accessTufts_Leveraging_DesignThinking_EnterpriseArchitecture_NERCOMP_3-23-201...
 

Plus de Skelton Thatcher Consulting Ltd

Practical operability techniques for teams - Matthew Skelton - Agile in the C...
Practical operability techniques for teams - Matthew Skelton - Agile in the C...Practical operability techniques for teams - Matthew Skelton - Agile in the C...
Practical operability techniques for teams - Matthew Skelton - Agile in the C...Skelton Thatcher Consulting Ltd
 
Practical operability techniques for distributed systems - Velocity EU 2017
Practical operability techniques for distributed systems - Velocity EU 2017Practical operability techniques for distributed systems - Velocity EU 2017
Practical operability techniques for distributed systems - Velocity EU 2017Skelton Thatcher Consulting Ltd
 
Practical operability techniques for teams - IPEXPO 2017
Practical operability techniques for teams - IPEXPO 2017Practical operability techniques for teams - IPEXPO 2017
Practical operability techniques for teams - IPEXPO 2017Skelton Thatcher Consulting Ltd
 
Practical operability techniques for teams - webinar - Skelton Thatcher & Unicom
Practical operability techniques for teams - webinar - Skelton Thatcher & UnicomPractical operability techniques for teams - webinar - Skelton Thatcher & Unicom
Practical operability techniques for teams - webinar - Skelton Thatcher & UnicomSkelton Thatcher Consulting Ltd
 
How and why to design your teams for modern software - JAX DevOps - April 2017
How and why to design your teams for modern software - JAX DevOps - April 2017How and why to design your teams for modern software - JAX DevOps - April 2017
How and why to design your teams for modern software - JAX DevOps - April 2017Skelton Thatcher Consulting Ltd
 
Using Rancher for highly available deployment services with GoCD and TeamCity
Using Rancher for highly available deployment services with GoCD and TeamCityUsing Rancher for highly available deployment services with GoCD and TeamCity
Using Rancher for highly available deployment services with GoCD and TeamCitySkelton Thatcher Consulting Ltd
 
How and why to design your Teams for modern Software Systems - Matthew Skelto...
How and why to design your Teams for modern Software Systems - Matthew Skelto...How and why to design your Teams for modern Software Systems - Matthew Skelto...
How and why to design your Teams for modern Software Systems - Matthew Skelto...Skelton Thatcher Consulting Ltd
 
Continuous Delivery Anti-patterns from the wild - Matthew Skelton- IPEXPO Europe
Continuous Delivery Anti-patterns from the wild - Matthew Skelton- IPEXPO EuropeContinuous Delivery Anti-patterns from the wild - Matthew Skelton- IPEXPO Europe
Continuous Delivery Anti-patterns from the wild - Matthew Skelton- IPEXPO EuropeSkelton Thatcher Consulting Ltd
 
Continuous Delivery antipatterns from the wild - Matthew Skelton - IPEXPO Man...
Continuous Delivery antipatterns from the wild - Matthew Skelton - IPEXPO Man...Continuous Delivery antipatterns from the wild - Matthew Skelton - IPEXPO Man...
Continuous Delivery antipatterns from the wild - Matthew Skelton - IPEXPO Man...Skelton Thatcher Consulting Ltd
 
Continuous Delivery antipatterns from the wild - Matthew Skelton - Continuous...
Continuous Delivery antipatterns from the wild - Matthew Skelton - Continuous...Continuous Delivery antipatterns from the wild - Matthew Skelton - Continuous...
Continuous Delivery antipatterns from the wild - Matthew Skelton - Continuous...Skelton Thatcher Consulting Ltd
 
Why and how to test logging - DevOps Showcase North - Feb 2016 - Matthew Skelton
Why and how to test logging - DevOps Showcase North - Feb 2016 - Matthew SkeltonWhy and how to test logging - DevOps Showcase North - Feb 2016 - Matthew Skelton
Why and how to test logging - DevOps Showcase North - Feb 2016 - Matthew SkeltonSkelton Thatcher Consulting Ltd
 
How to bridge the Dev-DBA chasm - AgileYorkshire - Matthew Skelton
How to bridge the Dev-DBA chasm - AgileYorkshire - Matthew SkeltonHow to bridge the Dev-DBA chasm - AgileYorkshire - Matthew Skelton
How to bridge the Dev-DBA chasm - AgileYorkshire - Matthew SkeltonSkelton Thatcher Consulting Ltd
 
How to address operational aspects effectively with Agile practices - Matthew...
How to address operational aspects effectively with Agile practices - Matthew...How to address operational aspects effectively with Agile practices - Matthew...
How to address operational aspects effectively with Agile practices - Matthew...Skelton Thatcher Consulting Ltd
 
Long live the DevOps team - LeedsDevOps - 2015-10-22 - Matthew Skelton
Long live the DevOps team - LeedsDevOps - 2015-10-22 - Matthew SkeltonLong live the DevOps team - LeedsDevOps - 2015-10-22 - Matthew Skelton
Long live the DevOps team - LeedsDevOps - 2015-10-22 - Matthew SkeltonSkelton Thatcher Consulting Ltd
 
Un-broken Logging - TechnologyUG - Leeds - Matthew Skelton
Un-broken Logging - TechnologyUG - Leeds - Matthew SkeltonUn-broken Logging - TechnologyUG - Leeds - Matthew Skelton
Un-broken Logging - TechnologyUG - Leeds - Matthew SkeltonSkelton Thatcher Consulting Ltd
 
Demystifying Operational Features for Product Owners - AgileCam - SkeltonThat...
Demystifying Operational Features for Product Owners - AgileCam - SkeltonThat...Demystifying Operational Features for Product Owners - AgileCam - SkeltonThat...
Demystifying Operational Features for Product Owners - AgileCam - SkeltonThat...Skelton Thatcher Consulting Ltd
 
Un-broken Logging - Operability.io 2015 - Matthew Skelton
Un-broken Logging - Operability.io 2015 - Matthew SkeltonUn-broken Logging - Operability.io 2015 - Matthew Skelton
Un-broken Logging - Operability.io 2015 - Matthew SkeltonSkelton Thatcher Consulting Ltd
 
Long live the DevOps team - Edinburgh 2015 - Skelton Thatcher
Long live the DevOps team - Edinburgh 2015 - Skelton ThatcherLong live the DevOps team - Edinburgh 2015 - Skelton Thatcher
Long live the DevOps team - Edinburgh 2015 - Skelton ThatcherSkelton Thatcher Consulting Ltd
 
Miniature Guide to Operational Features - EdinDevOps - SkeltonThatcher
Miniature Guide to Operational Features - EdinDevOps - SkeltonThatcherMiniature Guide to Operational Features - EdinDevOps - SkeltonThatcher
Miniature Guide to Operational Features - EdinDevOps - SkeltonThatcherSkelton Thatcher Consulting Ltd
 

Plus de Skelton Thatcher Consulting Ltd (20)

Practical operability techniques for teams - Matthew Skelton - Agile in the C...
Practical operability techniques for teams - Matthew Skelton - Agile in the C...Practical operability techniques for teams - Matthew Skelton - Agile in the C...
Practical operability techniques for teams - Matthew Skelton - Agile in the C...
 
Practical operability techniques for distributed systems - Velocity EU 2017
Practical operability techniques for distributed systems - Velocity EU 2017Practical operability techniques for distributed systems - Velocity EU 2017
Practical operability techniques for distributed systems - Velocity EU 2017
 
Practical operability techniques for teams - IPEXPO 2017
Practical operability techniques for teams - IPEXPO 2017Practical operability techniques for teams - IPEXPO 2017
Practical operability techniques for teams - IPEXPO 2017
 
Practical operability techniques for teams - webinar - Skelton Thatcher & Unicom
Practical operability techniques for teams - webinar - Skelton Thatcher & UnicomPractical operability techniques for teams - webinar - Skelton Thatcher & Unicom
Practical operability techniques for teams - webinar - Skelton Thatcher & Unicom
 
How and why to design your teams for modern software - JAX DevOps - April 2017
How and why to design your teams for modern software - JAX DevOps - April 2017How and why to design your teams for modern software - JAX DevOps - April 2017
How and why to design your teams for modern software - JAX DevOps - April 2017
 
Using Rancher for highly available deployment services with GoCD and TeamCity
Using Rancher for highly available deployment services with GoCD and TeamCityUsing Rancher for highly available deployment services with GoCD and TeamCity
Using Rancher for highly available deployment services with GoCD and TeamCity
 
How and why to design your Teams for modern Software Systems - Matthew Skelto...
How and why to design your Teams for modern Software Systems - Matthew Skelto...How and why to design your Teams for modern Software Systems - Matthew Skelto...
How and why to design your Teams for modern Software Systems - Matthew Skelto...
 
Continuous Delivery Anti-patterns from the wild - Matthew Skelton- IPEXPO Europe
Continuous Delivery Anti-patterns from the wild - Matthew Skelton- IPEXPO EuropeContinuous Delivery Anti-patterns from the wild - Matthew Skelton- IPEXPO Europe
Continuous Delivery Anti-patterns from the wild - Matthew Skelton- IPEXPO Europe
 
Continuous Delivery antipatterns from the wild - Matthew Skelton - IPEXPO Man...
Continuous Delivery antipatterns from the wild - Matthew Skelton - IPEXPO Man...Continuous Delivery antipatterns from the wild - Matthew Skelton - IPEXPO Man...
Continuous Delivery antipatterns from the wild - Matthew Skelton - IPEXPO Man...
 
Continuous Delivery antipatterns from the wild - Matthew Skelton - Continuous...
Continuous Delivery antipatterns from the wild - Matthew Skelton - Continuous...Continuous Delivery antipatterns from the wild - Matthew Skelton - Continuous...
Continuous Delivery antipatterns from the wild - Matthew Skelton - Continuous...
 
Why and how to test logging - DevOps Showcase North - Feb 2016 - Matthew Skelton
Why and how to test logging - DevOps Showcase North - Feb 2016 - Matthew SkeltonWhy and how to test logging - DevOps Showcase North - Feb 2016 - Matthew Skelton
Why and how to test logging - DevOps Showcase North - Feb 2016 - Matthew Skelton
 
How to bridge the Dev-DBA chasm - AgileYorkshire - Matthew Skelton
How to bridge the Dev-DBA chasm - AgileYorkshire - Matthew SkeltonHow to bridge the Dev-DBA chasm - AgileYorkshire - Matthew Skelton
How to bridge the Dev-DBA chasm - AgileYorkshire - Matthew Skelton
 
How to address operational aspects effectively with Agile practices - Matthew...
How to address operational aspects effectively with Agile practices - Matthew...How to address operational aspects effectively with Agile practices - Matthew...
How to address operational aspects effectively with Agile practices - Matthew...
 
Long live the DevOps team - LeedsDevOps - 2015-10-22 - Matthew Skelton
Long live the DevOps team - LeedsDevOps - 2015-10-22 - Matthew SkeltonLong live the DevOps team - LeedsDevOps - 2015-10-22 - Matthew Skelton
Long live the DevOps team - LeedsDevOps - 2015-10-22 - Matthew Skelton
 
Un-broken Logging - TechnologyUG - Leeds - Matthew Skelton
Un-broken Logging - TechnologyUG - Leeds - Matthew SkeltonUn-broken Logging - TechnologyUG - Leeds - Matthew Skelton
Un-broken Logging - TechnologyUG - Leeds - Matthew Skelton
 
Demystifying Operational Features for Product Owners - AgileCam - SkeltonThat...
Demystifying Operational Features for Product Owners - AgileCam - SkeltonThat...Demystifying Operational Features for Product Owners - AgileCam - SkeltonThat...
Demystifying Operational Features for Product Owners - AgileCam - SkeltonThat...
 
Un-broken Logging - Operability.io 2015 - Matthew Skelton
Un-broken Logging - Operability.io 2015 - Matthew SkeltonUn-broken Logging - Operability.io 2015 - Matthew Skelton
Un-broken Logging - Operability.io 2015 - Matthew Skelton
 
Long live the DevOps team - Edinburgh 2015 - Skelton Thatcher
Long live the DevOps team - Edinburgh 2015 - Skelton ThatcherLong live the DevOps team - Edinburgh 2015 - Skelton Thatcher
Long live the DevOps team - Edinburgh 2015 - Skelton Thatcher
 
Miniature Guide to Operational Features - EdinDevOps - SkeltonThatcher
Miniature Guide to Operational Features - EdinDevOps - SkeltonThatcherMiniature Guide to Operational Features - EdinDevOps - SkeltonThatcher
Miniature Guide to Operational Features - EdinDevOps - SkeltonThatcher
 
Experiences joining Agile and ITIL for DevOps
Experiences joining Agile and ITIL for DevOpsExperiences joining Agile and ITIL for DevOps
Experiences joining Agile and ITIL for DevOps
 

Dernier

%in Soweto+277-882-255-28 abortion pills for sale in soweto
%in Soweto+277-882-255-28 abortion pills for sale in soweto%in Soweto+277-882-255-28 abortion pills for sale in soweto
%in Soweto+277-882-255-28 abortion pills for sale in sowetomasabamasaba
 
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...masabamasaba
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisamasabamasaba
 
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM TechniquesAI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM TechniquesVictorSzoltysek
 
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
Direct Style Effect Systems -The Print[A] Example- A Comprehension AidDirect Style Effect Systems -The Print[A] Example- A Comprehension Aid
Direct Style Effect Systems - The Print[A] Example - A Comprehension AidPhilip Schwarz
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsArshad QA
 
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park %in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park masabamasaba
 
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrainmasabamasaba
 
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfonteinmasabamasaba
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsJhone kinadey
 
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital TransformationWSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital TransformationWSO2
 
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) SolutionIntroducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) SolutionOnePlan Solutions
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplatePresentation.STUDIO
 
%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrandmasabamasaba
 
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...WSO2
 
8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech studentsHimanshiGarg82
 
The title is not connected to what is inside
The title is not connected to what is insideThe title is not connected to what is inside
The title is not connected to what is insideshinachiaurasa2
 
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...Shane Coughlan
 
tonesoftg
tonesoftgtonesoftg
tonesoftglanshi9
 
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park %in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park masabamasaba
 

Dernier (20)

%in Soweto+277-882-255-28 abortion pills for sale in soweto
%in Soweto+277-882-255-28 abortion pills for sale in soweto%in Soweto+277-882-255-28 abortion pills for sale in soweto
%in Soweto+277-882-255-28 abortion pills for sale in soweto
 
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
 
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM TechniquesAI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
 
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
Direct Style Effect Systems -The Print[A] Example- A Comprehension AidDirect Style Effect Systems -The Print[A] Example- A Comprehension Aid
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview Questions
 
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park %in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
 
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
 
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial Goals
 
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital TransformationWSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
 
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) SolutionIntroducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation Template
 
%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand
 
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
 
8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students
 
The title is not connected to what is inside
The title is not connected to what is insideThe title is not connected to what is inside
The title is not connected to what is inside
 
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
 
tonesoftg
tonesoftgtonesoftg
tonesoftg
 
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park %in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
 

Teams and monoliths - Matthew Skelton - London DevOps June 2017