SlideShare a Scribd company logo
Evolution : Experience
Report
Shodhan Sheth
Techy at heart, currently tech principal
@thoughtworks
Who am I
Context of client
● UK Public sector
● Administers a set of financial products offered to UK residents
● 40-50 products depending on how you count
● Slave to policy, regulatory [& political] needs
● Have been personally helping them for a total of ~3 years in an attempt to
re-platform the core systems
Organizational Constraints
● Single software body to execute policy intent of 4 different policy entities
& 4 different operational entities
● Tied to public sector budgeting processes and cycles
○ Budgets approved ~1 year before start of FY
● Return on Investment model dependent on high proportions of reuse of
tech across all products
Baggage
● Large legacy estate [>15 years old tech, not supported by authoring orgs]
● Heavy change management process
● Shared, snowflake environments
● Emphasis on heavy manual end-to-end testing before releases
● On premise, manually configured infrastructure
What have we achieved so far
Technology oasis
● Own & maintain 30+ services using languages, libraries and approaches
relevant today
● Contributed some components [libraries helping implementing
organization wide CFRs – authentication, logging, tracing, etc] back to
other parts of the organization
● Automated pipelines that can help move code from commit to live in ~2h
● Standup a skeleton service [including configuration management] in ~1d
● Service 10% of live customer volume [rest 90% is on legacy system]
What's special ?
Long Tail
Long Tail
Consumption
Products
Long Tail – Movie rental business
Views
Movie titles
Long Tail
Views
Movie titles
Blockbuster
Long Tail
Views
Movie titles
Netflix
Long Tail
Numberofcustomers
Customer circumstances
This
place
What does that mean
● Need to cover all types of customer circumstances for the service being
offered
● Really stretches the ability to reuse building blocks
● Forces one to build for edge cases/ exceptions first as that becomes the
core USP
Impact
● Influences product evolution strategy
○ Need to cover all types of customer circumstances for the service being offered
● Forces one to build for edge cases/ exceptions first as that becomes the
core USP
Policy Policy Policy
Policy driven delivery
● Every year a new policy spec is published by the governing body, which
builds on top of an existing policy spec
● At any particular point of time there are 300-400 policy cohorts live
○ Every year some of the oldest policy sets become defunct, while new ones get added
for new cohorts
● A policy cohort can have a life of 3-16 years depending of the product
● Policy cohorts are guarded by “transitional protection” clauses
Awesome
Good
Maybe Not Good
● It isn’t really like
this, but
something like
it**
● Its difficult to get
this picture for
this client as we
were multi repo
Why ?
● Business constraints on changing the outcome of a policy cohort
○ Organizational fear of technology lead change/ refactor leading to change in already
delivered policy outcome
○ Organizational fear of automation suites to be enough of a safety net
● We dint want to constraint ourselves to sticking to the first
implementation model we had created [we had learnt so much since]
● Luckily the first policy cohorts we implemented had a life of ~4 years
○ So they would die a natural death soon
Enduring solution
● Segregating policy spec implementation and surrounding operational
requirements
● Strategy patterns that allow for different implementations for known
variances in policy cohorts [~50 dimensions from historical evidence and a
domain experts view]
● Influencing organizational behavior by showing concrete evidence of
change supported by automated safety nets
The human problem
In the last 5 years
● Many [~10] CXOs changed
● Many [~20] Tech Leads/
Architects changed
● Many [~200] developers
changed
● The tech landscape changed
In the last 5 years
● Many [~10] CXOs changed
● Many [~20] Tech Leads/
Architects changed
● Many [~200] developers
changed
● The tech landscape changed
● Leadership vision changed
● Architectural philosophies
changed
● Low level code preferences
changed
● What was best practice when
we started is frowned upon
now
Humans are unique snowflakes
● Consensus amongst a given set of people is hard
○ Have to rely on authority models a lot of times to drive decisions
○ Creates some tension with providing teams autonomy
● Adding people churn to that model makes it harder
● It becomes exponentially harder when the churn is at the top because of
the heavy reliance on authority models
● Caused some unintended evolution paths
What we could have done better
● Don’t really have a good answer
● The notion of fitness functions* for each service to guide evolution of key
technical and business tenants sounds promising
○ Though automating some of those fitness functions seemed hard on first thoughts
○ But maybe even documenting those tenants could have forced more deliberate
thought
THANK YOU
For questions or suggestions:
Shodhan Sheth
shodhan.sheth@thoughtworks.com

More Related Content

Similar to Evolution: Experience Report - Shodhan Sheth

Duffield institutions and better infrastructure 2
Duffield   institutions and better infrastructure 2Duffield   institutions and better infrastructure 2
Duffield institutions and better infrastructure 2Mochamad Rifansyah
 
Do it, sf state project lifecycle management (plm) v1.19 091012
Do it, sf state project lifecycle management (plm) v1.19 091012Do it, sf state project lifecycle management (plm) v1.19 091012
Do it, sf state project lifecycle management (plm) v1.19 091012
satish526
 
Building a CI platform
Building a CI platformBuilding a CI platform
Building a CI platform
Marcel Brussee
 
Derren Hams cv 9.1
Derren Hams cv 9.1Derren Hams cv 9.1
Derren Hams cv 9.1
Derren Hams
 
A Day in the Life of an Enterprise Architect (Role Play Exercise) 2016
A Day in the Life of an Enterprise Architect (Role Play Exercise) 2016A Day in the Life of an Enterprise Architect (Role Play Exercise) 2016
A Day in the Life of an Enterprise Architect (Role Play Exercise) 2016
Daljit Banger
 
Intranet governance and information management
Intranet governance and information managementIntranet governance and information management
Intranet governance and information management
GabrieleSani3
 
How to develop and govern a Technology Strategy in 10 weeks
How to develop and govern a Technology Strategy in 10 weeksHow to develop and govern a Technology Strategy in 10 weeks
How to develop and govern a Technology Strategy in 10 weeks
Leo Barella
 
[WSO2Con USA 2018] Winning Strategy For Enterprise Integration to Empower Dig...
[WSO2Con USA 2018] Winning Strategy For Enterprise Integration to Empower Dig...[WSO2Con USA 2018] Winning Strategy For Enterprise Integration to Empower Dig...
[WSO2Con USA 2018] Winning Strategy For Enterprise Integration to Empower Dig...
WSO2
 
Change, Release, Management In-Depth vTom.pptx
Change, Release, Management In-Depth vTom.pptxChange, Release, Management In-Depth vTom.pptx
Change, Release, Management In-Depth vTom.pptx
AdilPatel34
 
Dealing with Extra Long Duration Megaprojects
Dealing with Extra Long Duration MegaprojectsDealing with Extra Long Duration Megaprojects
Dealing with Extra Long Duration Megaprojects
Jeremie Averous
 
Case Study on Operational Strategy for an IT OrganizationYou are.docx
Case Study on Operational Strategy for an IT OrganizationYou are.docxCase Study on Operational Strategy for an IT OrganizationYou are.docx
Case Study on Operational Strategy for an IT OrganizationYou are.docx
keturahhazelhurst
 
Proposal dms for dwf v2
Proposal   dms for dwf v2Proposal   dms for dwf v2
Proposal dms for dwf v2Media-Mosaic
 
case study on operational strategy for an it organization.docx
case study on operational strategy for an it organization.docxcase study on operational strategy for an it organization.docx
case study on operational strategy for an it organization.docx
studywriters
 
case study on operational strategy for an it organization.docx
case study on operational strategy for an it organization.docxcase study on operational strategy for an it organization.docx
case study on operational strategy for an it organization.docx
write12
 
TOGAF 9.2 - the update
TOGAF 9.2 - the updateTOGAF 9.2 - the update
TOGAF 9.2 - the update
Danny Greefhorst
 
A Brief Introduction to Enterprise Architecture
A Brief Introduction to  Enterprise Architecture A Brief Introduction to  Enterprise Architecture
A Brief Introduction to Enterprise Architecture
Daljit Banger
 
Strategic Change Management in Large Organisations - Brian Martin
Strategic Change Management in Large Organisations - Brian MartinStrategic Change Management in Large Organisations - Brian Martin
Strategic Change Management in Large Organisations - Brian Martin
Association for Project Management
 
Practical tips for implementing corporate performance management system
Practical tips for implementing corporate performance management systemPractical tips for implementing corporate performance management system
Practical tips for implementing corporate performance management system
Ketan Parekh
 

Similar to Evolution: Experience Report - Shodhan Sheth (20)

Duffield institutions and better infrastructure 2
Duffield   institutions and better infrastructure 2Duffield   institutions and better infrastructure 2
Duffield institutions and better infrastructure 2
 
Do it, sf state project lifecycle management (plm) v1.19 091012
Do it, sf state project lifecycle management (plm) v1.19 091012Do it, sf state project lifecycle management (plm) v1.19 091012
Do it, sf state project lifecycle management (plm) v1.19 091012
 
Design time governance
Design time governanceDesign time governance
Design time governance
 
Building a CI platform
Building a CI platformBuilding a CI platform
Building a CI platform
 
Derren Hams cv 9.1
Derren Hams cv 9.1Derren Hams cv 9.1
Derren Hams cv 9.1
 
A Day in the Life of an Enterprise Architect (Role Play Exercise) 2016
A Day in the Life of an Enterprise Architect (Role Play Exercise) 2016A Day in the Life of an Enterprise Architect (Role Play Exercise) 2016
A Day in the Life of an Enterprise Architect (Role Play Exercise) 2016
 
Intranet governance and information management
Intranet governance and information managementIntranet governance and information management
Intranet governance and information management
 
How to develop and govern a Technology Strategy in 10 weeks
How to develop and govern a Technology Strategy in 10 weeksHow to develop and govern a Technology Strategy in 10 weeks
How to develop and govern a Technology Strategy in 10 weeks
 
[WSO2Con USA 2018] Winning Strategy For Enterprise Integration to Empower Dig...
[WSO2Con USA 2018] Winning Strategy For Enterprise Integration to Empower Dig...[WSO2Con USA 2018] Winning Strategy For Enterprise Integration to Empower Dig...
[WSO2Con USA 2018] Winning Strategy For Enterprise Integration to Empower Dig...
 
Change, Release, Management In-Depth vTom.pptx
Change, Release, Management In-Depth vTom.pptxChange, Release, Management In-Depth vTom.pptx
Change, Release, Management In-Depth vTom.pptx
 
Dealing with Extra Long Duration Megaprojects
Dealing with Extra Long Duration MegaprojectsDealing with Extra Long Duration Megaprojects
Dealing with Extra Long Duration Megaprojects
 
Case Study on Operational Strategy for an IT OrganizationYou are.docx
Case Study on Operational Strategy for an IT OrganizationYou are.docxCase Study on Operational Strategy for an IT OrganizationYou are.docx
Case Study on Operational Strategy for an IT OrganizationYou are.docx
 
Proposal dms for dwf v2
Proposal   dms for dwf v2Proposal   dms for dwf v2
Proposal dms for dwf v2
 
case study on operational strategy for an it organization.docx
case study on operational strategy for an it organization.docxcase study on operational strategy for an it organization.docx
case study on operational strategy for an it organization.docx
 
case study on operational strategy for an it organization.docx
case study on operational strategy for an it organization.docxcase study on operational strategy for an it organization.docx
case study on operational strategy for an it organization.docx
 
TOGAF 9.2 - the update
TOGAF 9.2 - the updateTOGAF 9.2 - the update
TOGAF 9.2 - the update
 
J-DavisCV[1]
J-DavisCV[1]J-DavisCV[1]
J-DavisCV[1]
 
A Brief Introduction to Enterprise Architecture
A Brief Introduction to  Enterprise Architecture A Brief Introduction to  Enterprise Architecture
A Brief Introduction to Enterprise Architecture
 
Strategic Change Management in Large Organisations - Brian Martin
Strategic Change Management in Large Organisations - Brian MartinStrategic Change Management in Large Organisations - Brian Martin
Strategic Change Management in Large Organisations - Brian Martin
 
Practical tips for implementing corporate performance management system
Practical tips for implementing corporate performance management systemPractical tips for implementing corporate performance management system
Practical tips for implementing corporate performance management system
 

More from Thoughtworks

Design System as a Product
Design System as a ProductDesign System as a Product
Design System as a Product
Thoughtworks
 
Designers, Developers & Dogs
Designers, Developers & DogsDesigners, Developers & Dogs
Designers, Developers & Dogs
Thoughtworks
 
Cloud-first for fast innovation
Cloud-first for fast innovationCloud-first for fast innovation
Cloud-first for fast innovation
Thoughtworks
 
More impact with flexible teams
More impact with flexible teamsMore impact with flexible teams
More impact with flexible teams
Thoughtworks
 
Culture of Innovation
Culture of InnovationCulture of Innovation
Culture of Innovation
Thoughtworks
 
Dual-Track Agile
Dual-Track AgileDual-Track Agile
Dual-Track Agile
Thoughtworks
 
Developer Experience
Developer ExperienceDeveloper Experience
Developer Experience
Thoughtworks
 
When we design together
When we design togetherWhen we design together
When we design together
Thoughtworks
 
Hardware is hard(er)
Hardware is hard(er)Hardware is hard(er)
Hardware is hard(er)
Thoughtworks
 
Customer-centric innovation enabled by cloud
 Customer-centric innovation enabled by cloud Customer-centric innovation enabled by cloud
Customer-centric innovation enabled by cloud
Thoughtworks
 
Amazon's Culture of Innovation
Amazon's Culture of InnovationAmazon's Culture of Innovation
Amazon's Culture of Innovation
Thoughtworks
 
When in doubt, go live
When in doubt, go liveWhen in doubt, go live
When in doubt, go live
Thoughtworks
 
Don't cross the Rubicon
Don't cross the RubiconDon't cross the Rubicon
Don't cross the Rubicon
Thoughtworks
 
Error handling
Error handlingError handling
Error handling
Thoughtworks
 
Your test coverage is a lie!
Your test coverage is a lie!Your test coverage is a lie!
Your test coverage is a lie!
Thoughtworks
 
Docker container security
Docker container securityDocker container security
Docker container security
Thoughtworks
 
Redefining the unit
Redefining the unitRedefining the unit
Redefining the unit
Thoughtworks
 
Technology Radar Webinar UK - Vol. 22
Technology Radar Webinar UK - Vol. 22Technology Radar Webinar UK - Vol. 22
Technology Radar Webinar UK - Vol. 22
Thoughtworks
 
A Tribute to Turing
A Tribute to TuringA Tribute to Turing
A Tribute to Turing
Thoughtworks
 
Rsa maths worked out
Rsa maths worked outRsa maths worked out
Rsa maths worked out
Thoughtworks
 

More from Thoughtworks (20)

Design System as a Product
Design System as a ProductDesign System as a Product
Design System as a Product
 
Designers, Developers & Dogs
Designers, Developers & DogsDesigners, Developers & Dogs
Designers, Developers & Dogs
 
Cloud-first for fast innovation
Cloud-first for fast innovationCloud-first for fast innovation
Cloud-first for fast innovation
 
More impact with flexible teams
More impact with flexible teamsMore impact with flexible teams
More impact with flexible teams
 
Culture of Innovation
Culture of InnovationCulture of Innovation
Culture of Innovation
 
Dual-Track Agile
Dual-Track AgileDual-Track Agile
Dual-Track Agile
 
Developer Experience
Developer ExperienceDeveloper Experience
Developer Experience
 
When we design together
When we design togetherWhen we design together
When we design together
 
Hardware is hard(er)
Hardware is hard(er)Hardware is hard(er)
Hardware is hard(er)
 
Customer-centric innovation enabled by cloud
 Customer-centric innovation enabled by cloud Customer-centric innovation enabled by cloud
Customer-centric innovation enabled by cloud
 
Amazon's Culture of Innovation
Amazon's Culture of InnovationAmazon's Culture of Innovation
Amazon's Culture of Innovation
 
When in doubt, go live
When in doubt, go liveWhen in doubt, go live
When in doubt, go live
 
Don't cross the Rubicon
Don't cross the RubiconDon't cross the Rubicon
Don't cross the Rubicon
 
Error handling
Error handlingError handling
Error handling
 
Your test coverage is a lie!
Your test coverage is a lie!Your test coverage is a lie!
Your test coverage is a lie!
 
Docker container security
Docker container securityDocker container security
Docker container security
 
Redefining the unit
Redefining the unitRedefining the unit
Redefining the unit
 
Technology Radar Webinar UK - Vol. 22
Technology Radar Webinar UK - Vol. 22Technology Radar Webinar UK - Vol. 22
Technology Radar Webinar UK - Vol. 22
 
A Tribute to Turing
A Tribute to TuringA Tribute to Turing
A Tribute to Turing
 
Rsa maths worked out
Rsa maths worked outRsa maths worked out
Rsa maths worked out
 

Recently uploaded

Large Language Models and the End of Programming
Large Language Models and the End of ProgrammingLarge Language Models and the End of Programming
Large Language Models and the End of Programming
Matt Welsh
 
Globus Connect Server Deep Dive - GlobusWorld 2024
Globus Connect Server Deep Dive - GlobusWorld 2024Globus Connect Server Deep Dive - GlobusWorld 2024
Globus Connect Server Deep Dive - GlobusWorld 2024
Globus
 
Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus Compute wth IRI Workflows - GlobusWorld 2024Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus
 
Lecture 1 Introduction to games development
Lecture 1 Introduction to games developmentLecture 1 Introduction to games development
Lecture 1 Introduction to games development
abdulrafaychaudhry
 
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Mind IT Systems
 
Cyaniclab : Software Development Agency Portfolio.pdf
Cyaniclab : Software Development Agency Portfolio.pdfCyaniclab : Software Development Agency Portfolio.pdf
Cyaniclab : Software Development Agency Portfolio.pdf
Cyanic lab
 
Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604
Fermin Galan
 
Quarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden ExtensionsQuarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden Extensions
Max Andersen
 
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptxTop Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
rickgrimesss22
 
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.ILBeyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Natan Silnitsky
 
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
informapgpstrackings
 
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing SuiteAI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
Google
 
Launch Your Streaming Platforms in Minutes
Launch Your Streaming Platforms in MinutesLaunch Your Streaming Platforms in Minutes
Launch Your Streaming Platforms in Minutes
Roshan Dwivedi
 
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Globus
 
Enhancing Research Orchestration Capabilities at ORNL.pdf
Enhancing Research Orchestration Capabilities at ORNL.pdfEnhancing Research Orchestration Capabilities at ORNL.pdf
Enhancing Research Orchestration Capabilities at ORNL.pdf
Globus
 
Providing Globus Services to Users of JASMIN for Environmental Data Analysis
Providing Globus Services to Users of JASMIN for Environmental Data AnalysisProviding Globus Services to Users of JASMIN for Environmental Data Analysis
Providing Globus Services to Users of JASMIN for Environmental Data Analysis
Globus
 
Top 7 Unique WhatsApp API Benefits | Saudi Arabia
Top 7 Unique WhatsApp API Benefits | Saudi ArabiaTop 7 Unique WhatsApp API Benefits | Saudi Arabia
Top 7 Unique WhatsApp API Benefits | Saudi Arabia
Yara Milbes
 
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
Juraj Vysvader
 
A Sighting of filterA in Typelevel Rite of Passage
A Sighting of filterA in Typelevel Rite of PassageA Sighting of filterA in Typelevel Rite of Passage
A Sighting of filterA in Typelevel Rite of Passage
Philip Schwarz
 
Developing Distributed High-performance Computing Capabilities of an Open Sci...
Developing Distributed High-performance Computing Capabilities of an Open Sci...Developing Distributed High-performance Computing Capabilities of an Open Sci...
Developing Distributed High-performance Computing Capabilities of an Open Sci...
Globus
 

Recently uploaded (20)

Large Language Models and the End of Programming
Large Language Models and the End of ProgrammingLarge Language Models and the End of Programming
Large Language Models and the End of Programming
 
Globus Connect Server Deep Dive - GlobusWorld 2024
Globus Connect Server Deep Dive - GlobusWorld 2024Globus Connect Server Deep Dive - GlobusWorld 2024
Globus Connect Server Deep Dive - GlobusWorld 2024
 
Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus Compute wth IRI Workflows - GlobusWorld 2024Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus Compute wth IRI Workflows - GlobusWorld 2024
 
Lecture 1 Introduction to games development
Lecture 1 Introduction to games developmentLecture 1 Introduction to games development
Lecture 1 Introduction to games development
 
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
 
Cyaniclab : Software Development Agency Portfolio.pdf
Cyaniclab : Software Development Agency Portfolio.pdfCyaniclab : Software Development Agency Portfolio.pdf
Cyaniclab : Software Development Agency Portfolio.pdf
 
Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604
 
Quarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden ExtensionsQuarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden Extensions
 
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptxTop Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
 
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.ILBeyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
 
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
 
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing SuiteAI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
 
Launch Your Streaming Platforms in Minutes
Launch Your Streaming Platforms in MinutesLaunch Your Streaming Platforms in Minutes
Launch Your Streaming Platforms in Minutes
 
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
 
Enhancing Research Orchestration Capabilities at ORNL.pdf
Enhancing Research Orchestration Capabilities at ORNL.pdfEnhancing Research Orchestration Capabilities at ORNL.pdf
Enhancing Research Orchestration Capabilities at ORNL.pdf
 
Providing Globus Services to Users of JASMIN for Environmental Data Analysis
Providing Globus Services to Users of JASMIN for Environmental Data AnalysisProviding Globus Services to Users of JASMIN for Environmental Data Analysis
Providing Globus Services to Users of JASMIN for Environmental Data Analysis
 
Top 7 Unique WhatsApp API Benefits | Saudi Arabia
Top 7 Unique WhatsApp API Benefits | Saudi ArabiaTop 7 Unique WhatsApp API Benefits | Saudi Arabia
Top 7 Unique WhatsApp API Benefits | Saudi Arabia
 
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
 
A Sighting of filterA in Typelevel Rite of Passage
A Sighting of filterA in Typelevel Rite of PassageA Sighting of filterA in Typelevel Rite of Passage
A Sighting of filterA in Typelevel Rite of Passage
 
Developing Distributed High-performance Computing Capabilities of an Open Sci...
Developing Distributed High-performance Computing Capabilities of an Open Sci...Developing Distributed High-performance Computing Capabilities of an Open Sci...
Developing Distributed High-performance Computing Capabilities of an Open Sci...
 

Evolution: Experience Report - Shodhan Sheth

  • 2. Techy at heart, currently tech principal @thoughtworks Who am I
  • 3. Context of client ● UK Public sector ● Administers a set of financial products offered to UK residents ● 40-50 products depending on how you count ● Slave to policy, regulatory [& political] needs ● Have been personally helping them for a total of ~3 years in an attempt to re-platform the core systems
  • 4. Organizational Constraints ● Single software body to execute policy intent of 4 different policy entities & 4 different operational entities ● Tied to public sector budgeting processes and cycles ○ Budgets approved ~1 year before start of FY ● Return on Investment model dependent on high proportions of reuse of tech across all products
  • 5. Baggage ● Large legacy estate [>15 years old tech, not supported by authoring orgs] ● Heavy change management process ● Shared, snowflake environments ● Emphasis on heavy manual end-to-end testing before releases ● On premise, manually configured infrastructure
  • 6. What have we achieved so far
  • 7. Technology oasis ● Own & maintain 30+ services using languages, libraries and approaches relevant today ● Contributed some components [libraries helping implementing organization wide CFRs – authentication, logging, tracing, etc] back to other parts of the organization ● Automated pipelines that can help move code from commit to live in ~2h ● Standup a skeleton service [including configuration management] in ~1d ● Service 10% of live customer volume [rest 90% is on legacy system]
  • 11. Long Tail – Movie rental business Views Movie titles
  • 15. What does that mean ● Need to cover all types of customer circumstances for the service being offered ● Really stretches the ability to reuse building blocks ● Forces one to build for edge cases/ exceptions first as that becomes the core USP
  • 16. Impact ● Influences product evolution strategy ○ Need to cover all types of customer circumstances for the service being offered ● Forces one to build for edge cases/ exceptions first as that becomes the core USP
  • 18. Policy driven delivery ● Every year a new policy spec is published by the governing body, which builds on top of an existing policy spec ● At any particular point of time there are 300-400 policy cohorts live ○ Every year some of the oldest policy sets become defunct, while new ones get added for new cohorts ● A policy cohort can have a life of 3-16 years depending of the product ● Policy cohorts are guarded by “transitional protection” clauses
  • 20. Good
  • 21. Maybe Not Good ● It isn’t really like this, but something like it** ● Its difficult to get this picture for this client as we were multi repo
  • 22. Why ? ● Business constraints on changing the outcome of a policy cohort ○ Organizational fear of technology lead change/ refactor leading to change in already delivered policy outcome ○ Organizational fear of automation suites to be enough of a safety net ● We dint want to constraint ourselves to sticking to the first implementation model we had created [we had learnt so much since] ● Luckily the first policy cohorts we implemented had a life of ~4 years ○ So they would die a natural death soon
  • 23. Enduring solution ● Segregating policy spec implementation and surrounding operational requirements ● Strategy patterns that allow for different implementations for known variances in policy cohorts [~50 dimensions from historical evidence and a domain experts view] ● Influencing organizational behavior by showing concrete evidence of change supported by automated safety nets
  • 25. In the last 5 years ● Many [~10] CXOs changed ● Many [~20] Tech Leads/ Architects changed ● Many [~200] developers changed ● The tech landscape changed
  • 26. In the last 5 years ● Many [~10] CXOs changed ● Many [~20] Tech Leads/ Architects changed ● Many [~200] developers changed ● The tech landscape changed ● Leadership vision changed ● Architectural philosophies changed ● Low level code preferences changed ● What was best practice when we started is frowned upon now
  • 27. Humans are unique snowflakes ● Consensus amongst a given set of people is hard ○ Have to rely on authority models a lot of times to drive decisions ○ Creates some tension with providing teams autonomy ● Adding people churn to that model makes it harder ● It becomes exponentially harder when the churn is at the top because of the heavy reliance on authority models ● Caused some unintended evolution paths
  • 28. What we could have done better ● Don’t really have a good answer ● The notion of fitness functions* for each service to guide evolution of key technical and business tenants sounds promising ○ Though automating some of those fitness functions seemed hard on first thoughts ○ But maybe even documenting those tenants could have forced more deliberate thought
  • 29. THANK YOU For questions or suggestions: Shodhan Sheth shodhan.sheth@thoughtworks.com