SlideShare uma empresa Scribd logo
1 de 20
Baixar para ler offline
No risk, no reward.
The joys of testing in
production.
UXDX Dublin, May 2018
Fabio Cognigni (@faberoh),
Natalia Bartol (@nataliabartol)
No Risk, No Reward: The Joys Of Testing In Production.
No Risk, No Reward: The Joys Of Testing In Production.
No Risk, No Reward: The Joys Of Testing In Production.
No Risk, No Reward: The Joys Of Testing In Production.
Legacy vs. Tech Dreams
?
Legacy vs. Tech Dreams
?
Shipping on top of monolith
staging
prod
QA
devDevs
QA
Ops
1 (huge) system x 4 envs; 3 teams
● No clear ownership
● Slow iterations
● Difficult and risky operations
● Low maneuverability
Deploy: weekly
Ship new features: months
Troubleshooting: days
Shipping on top of monolith
Mobile app services
middleware
wishlist
homepage
customer-
segmentation
CMS
Killing the monolith: strangler pattern
N services x 2 envs (staging, prod); 1 team (Devs)
Power to the Devs via easy/automated deployments. No Ops!
● Deploy small changes, more frequently
● More control (easier troubleshooting)
● Faster iterations
● Higher code (and product) quality
● Ship new features independently
Simplified deployment process
Safe deployments
Phased rollout to production:
● dark canary node
● live canary node
● live nodes
Dark canary
Live canary
Live node 3
Live node 1
Live node 2
Production
Microservices: challenges
N services x 2 envs (staging, prod) - still quite complex!
Maintaining a staging env becomes a headache:
● Infrastructure complexity & cost
● Fragile (never maintained with the same accuracy as prod)
● Bottleneck
Why do we need staging?
● Storing test data separately from production data.
● Separating test traffic/load from prod load.
● Some (3rd party) features are only possible to test in
staging.
● Sometimes testing against 3rd party staging is the only way
to capture breaking changes before they end up in
production.
The way out of staging environments
1. Remove staging environments for “read-only”
operations/domains (e.g. product catalog, inventory,
navigation);
2. Use sandbox / test accounts for everything else
https://mobile-api.hbc.com/organizations/saks/wishlists/...
https://mobile-api.hbc.com/organizations/test/wishlists/...
1. It’s fine to hit production with traffic coming from tests.
Developer-friendly production env
● Make code changes
● Create a Pull Request and get it reviewed
● Merge Pull Request
● Run unit tests
● Run integration tests - against production
● New release
● Validate / Showcase in dark
● Canary deployment
Shipping new features with microservices
N services x 1 env (prod); 1 team
Deploy: daily
Ship new features: weeks
Troubleshoot: hours
What could possibly go wrong?
Not much, if you make sure to have:
● Very good monitoring
● Easy and quick rollback
A Happy Place for Developers
● Own every phase of the SDLC.
● Release a product independently from other services the
product depends upon.
● Test with confidence without the need for staging
environment or stubbed data.
● Deploy at will.

Mais conteúdo relacionado

Mais procurados

Exploring the GitHub Service Universe
Exploring the GitHub Service UniverseExploring the GitHub Service Universe
Exploring the GitHub Service UniverseBjörn Kimminich
 
Heroku and Rails Applications
Heroku and Rails ApplicationsHeroku and Rails Applications
Heroku and Rails ApplicationsAndreas Sotnik
 
Knative makes Developers Incredible on Serverless
Knative makes Developers Incredible on ServerlessKnative makes Developers Incredible on Serverless
Knative makes Developers Incredible on ServerlessDaniel Oh
 
Building Bridges Between Applications and Data
Building Bridges Between Applications and DataBuilding Bridges Between Applications and Data
Building Bridges Between Applications and DataOlyaSurits
 
Full Stack Automation With Go
Full Stack Automation With GoFull Stack Automation With Go
Full Stack Automation With GoOlyaSurits
 
GitOps: Git come unica fonte di verità per applicazioni e infrastruttura
GitOps: Git come unica fonte di verità per applicazioni e infrastrutturaGitOps: Git come unica fonte di verità per applicazioni e infrastruttura
GitOps: Git come unica fonte di verità per applicazioni e infrastrutturasparkfabrik
 
CI:CD in Lightspeed with kubernetes and argo cd
CI:CD in Lightspeed with kubernetes and argo cdCI:CD in Lightspeed with kubernetes and argo cd
CI:CD in Lightspeed with kubernetes and argo cdBilly Yuen
 
GitOps with ArgoCD
GitOps with ArgoCDGitOps with ArgoCD
GitOps with ArgoCDCloudOps2005
 
CNCF Webinar Series: "Creating an Effective Developer Experience on Kubernetes"
CNCF Webinar Series: "Creating an Effective Developer Experience on Kubernetes"CNCF Webinar Series: "Creating an Effective Developer Experience on Kubernetes"
CNCF Webinar Series: "Creating an Effective Developer Experience on Kubernetes"Daniel Bryant
 
How we can do Multi-Tenancy on Kubernetes
How we can do Multi-Tenancy on KubernetesHow we can do Multi-Tenancy on Kubernetes
How we can do Multi-Tenancy on KubernetesOpsta
 
Gitlab meets Kubernetes
Gitlab meets KubernetesGitlab meets Kubernetes
Gitlab meets Kubernetesinovex GmbH
 
2015 05-06-karsten gaebert-akademie-etrainings
2015 05-06-karsten gaebert-akademie-etrainings2015 05-06-karsten gaebert-akademie-etrainings
2015 05-06-karsten gaebert-akademie-etrainingsHaufe-Lexware GmbH & Co KG
 
Chega de receita de bolo: gerenciando infraestrutura como código
Chega de receita de bolo: gerenciando infraestrutura como códigoChega de receita de bolo: gerenciando infraestrutura como código
Chega de receita de bolo: gerenciando infraestrutura como códigoIgor Abade
 
GitLab for CI/CD process
GitLab for CI/CD processGitLab for CI/CD process
GitLab for CI/CD processHYS Enterprise
 
[OSSummitEU2017]Ten Llayers of Linux Container Security
[OSSummitEU2017]Ten Llayers of Linux Container Security[OSSummitEU2017]Ten Llayers of Linux Container Security
[OSSummitEU2017]Ten Llayers of Linux Container SecurityDaniel Oh
 
Unleash the power of code reuse - creating plugins for Xamarin
Unleash the power of code reuse - creating plugins for XamarinUnleash the power of code reuse - creating plugins for Xamarin
Unleash the power of code reuse - creating plugins for XamarinYu GUAN
 
Kubernetes and Docker Native Deployment Patterns for WSO2 Enterprise Integrator
Kubernetes and Docker Native Deployment Patterns for WSO2 Enterprise IntegratorKubernetes and Docker Native Deployment Patterns for WSO2 Enterprise Integrator
Kubernetes and Docker Native Deployment Patterns for WSO2 Enterprise IntegratorWSO2
 
Deploying Spring Boot apps on Kubernetes
Deploying Spring Boot apps on KubernetesDeploying Spring Boot apps on Kubernetes
Deploying Spring Boot apps on KubernetesVMware Tanzu
 
GRIN Global Mobile App, Android and Windows 10
GRIN Global Mobile App, Android and Windows 10GRIN Global Mobile App, Android and Windows 10
GRIN Global Mobile App, Android and Windows 10Edwin Rojas
 

Mais procurados (20)

Exploring the GitHub Service Universe
Exploring the GitHub Service UniverseExploring the GitHub Service Universe
Exploring the GitHub Service Universe
 
Heroku and Rails Applications
Heroku and Rails ApplicationsHeroku and Rails Applications
Heroku and Rails Applications
 
Knative makes Developers Incredible on Serverless
Knative makes Developers Incredible on ServerlessKnative makes Developers Incredible on Serverless
Knative makes Developers Incredible on Serverless
 
Building Bridges Between Applications and Data
Building Bridges Between Applications and DataBuilding Bridges Between Applications and Data
Building Bridges Between Applications and Data
 
Full Stack Automation With Go
Full Stack Automation With GoFull Stack Automation With Go
Full Stack Automation With Go
 
GitOps: Git come unica fonte di verità per applicazioni e infrastruttura
GitOps: Git come unica fonte di verità per applicazioni e infrastrutturaGitOps: Git come unica fonte di verità per applicazioni e infrastruttura
GitOps: Git come unica fonte di verità per applicazioni e infrastruttura
 
Gitops Hands On
Gitops Hands OnGitops Hands On
Gitops Hands On
 
CI:CD in Lightspeed with kubernetes and argo cd
CI:CD in Lightspeed with kubernetes and argo cdCI:CD in Lightspeed with kubernetes and argo cd
CI:CD in Lightspeed with kubernetes and argo cd
 
GitOps with ArgoCD
GitOps with ArgoCDGitOps with ArgoCD
GitOps with ArgoCD
 
CNCF Webinar Series: "Creating an Effective Developer Experience on Kubernetes"
CNCF Webinar Series: "Creating an Effective Developer Experience on Kubernetes"CNCF Webinar Series: "Creating an Effective Developer Experience on Kubernetes"
CNCF Webinar Series: "Creating an Effective Developer Experience on Kubernetes"
 
How we can do Multi-Tenancy on Kubernetes
How we can do Multi-Tenancy on KubernetesHow we can do Multi-Tenancy on Kubernetes
How we can do Multi-Tenancy on Kubernetes
 
Gitlab meets Kubernetes
Gitlab meets KubernetesGitlab meets Kubernetes
Gitlab meets Kubernetes
 
2015 05-06-karsten gaebert-akademie-etrainings
2015 05-06-karsten gaebert-akademie-etrainings2015 05-06-karsten gaebert-akademie-etrainings
2015 05-06-karsten gaebert-akademie-etrainings
 
Chega de receita de bolo: gerenciando infraestrutura como código
Chega de receita de bolo: gerenciando infraestrutura como códigoChega de receita de bolo: gerenciando infraestrutura como código
Chega de receita de bolo: gerenciando infraestrutura como código
 
GitLab for CI/CD process
GitLab for CI/CD processGitLab for CI/CD process
GitLab for CI/CD process
 
[OSSummitEU2017]Ten Llayers of Linux Container Security
[OSSummitEU2017]Ten Llayers of Linux Container Security[OSSummitEU2017]Ten Llayers of Linux Container Security
[OSSummitEU2017]Ten Llayers of Linux Container Security
 
Unleash the power of code reuse - creating plugins for Xamarin
Unleash the power of code reuse - creating plugins for XamarinUnleash the power of code reuse - creating plugins for Xamarin
Unleash the power of code reuse - creating plugins for Xamarin
 
Kubernetes and Docker Native Deployment Patterns for WSO2 Enterprise Integrator
Kubernetes and Docker Native Deployment Patterns for WSO2 Enterprise IntegratorKubernetes and Docker Native Deployment Patterns for WSO2 Enterprise Integrator
Kubernetes and Docker Native Deployment Patterns for WSO2 Enterprise Integrator
 
Deploying Spring Boot apps on Kubernetes
Deploying Spring Boot apps on KubernetesDeploying Spring Boot apps on Kubernetes
Deploying Spring Boot apps on Kubernetes
 
GRIN Global Mobile App, Android and Windows 10
GRIN Global Mobile App, Android and Windows 10GRIN Global Mobile App, Android and Windows 10
GRIN Global Mobile App, Android and Windows 10
 

Semelhante a No Risk, No Reward: The Joys Of Testing In Production.

Agile Software Factory - Cloud Expo / DevOps Summit 2014 demo
Agile Software Factory - Cloud Expo / DevOps Summit 2014 demoAgile Software Factory - Cloud Expo / DevOps Summit 2014 demo
Agile Software Factory - Cloud Expo / DevOps Summit 2014 demoGrid Dynamics
 
Software Delivery in 2016 - A Continuous Delivery Approach
Software Delivery in 2016 - A Continuous Delivery ApproachSoftware Delivery in 2016 - A Continuous Delivery Approach
Software Delivery in 2016 - A Continuous Delivery ApproachGiovanni Toraldo
 
Agile & ALM tools
Agile & ALM toolsAgile & ALM tools
Agile & ALM toolsLarry Cai
 
Agile Engineering Sparker GLASScon 2015
Agile Engineering Sparker GLASScon 2015Agile Engineering Sparker GLASScon 2015
Agile Engineering Sparker GLASScon 2015Stephen Ritchie
 
Ensuring Performance in a Fast-Paced Environment (CMG 2014)
Ensuring Performance in a Fast-Paced Environment (CMG 2014)Ensuring Performance in a Fast-Paced Environment (CMG 2014)
Ensuring Performance in a Fast-Paced Environment (CMG 2014)Martin Spier
 
Weave GitOps 2022.09 Release: A Fast & Reliable Path to Production with Progr...
Weave GitOps 2022.09 Release: A Fast & Reliable Path to Production with Progr...Weave GitOps 2022.09 Release: A Fast & Reliable Path to Production with Progr...
Weave GitOps 2022.09 Release: A Fast & Reliable Path to Production with Progr...Weaveworks
 
Test parallelization using Jenkins
Test parallelization using JenkinsTest parallelization using Jenkins
Test parallelization using JenkinsRogue Wave Software
 
Lessons Learned from Migrating Legacy Enterprise Applications to Microservices
Lessons Learned from Migrating Legacy Enterprise Applications to MicroservicesLessons Learned from Migrating Legacy Enterprise Applications to Microservices
Lessons Learned from Migrating Legacy Enterprise Applications to MicroservicesVMware Tanzu
 
Making software development processes to work for you
Making software development processes to work for youMaking software development processes to work for you
Making software development processes to work for youAmbientia
 
Survival of the Continuist
Survival of the ContinuistSurvival of the Continuist
Survival of the ContinuistPaul Blundell
 
From 0 to DevOps in 80 Days [Webinar Replay]
From 0 to DevOps in 80 Days [Webinar Replay]From 0 to DevOps in 80 Days [Webinar Replay]
From 0 to DevOps in 80 Days [Webinar Replay]Dynatrace
 
Advanced deployment scenarios (netcoreconf)
Advanced deployment scenarios (netcoreconf)Advanced deployment scenarios (netcoreconf)
Advanced deployment scenarios (netcoreconf)Sergio Navarro Pino
 

Semelhante a No Risk, No Reward: The Joys Of Testing In Production. (20)

Agile Software Factory - Cloud Expo / DevOps Summit 2014 demo
Agile Software Factory - Cloud Expo / DevOps Summit 2014 demoAgile Software Factory - Cloud Expo / DevOps Summit 2014 demo
Agile Software Factory - Cloud Expo / DevOps Summit 2014 demo
 
Continuous integration at CartoDB
Continuous integration at CartoDBContinuous integration at CartoDB
Continuous integration at CartoDB
 
Software Delivery in 2016 - A Continuous Delivery Approach
Software Delivery in 2016 - A Continuous Delivery ApproachSoftware Delivery in 2016 - A Continuous Delivery Approach
Software Delivery in 2016 - A Continuous Delivery Approach
 
Agile & ALM tools
Agile & ALM toolsAgile & ALM tools
Agile & ALM tools
 
Automating the Quality
Automating the QualityAutomating the Quality
Automating the Quality
 
Agile Engineering Sparker GLASScon 2015
Agile Engineering Sparker GLASScon 2015Agile Engineering Sparker GLASScon 2015
Agile Engineering Sparker GLASScon 2015
 
Ensuring Performance in a Fast-Paced Environment (CMG 2014)
Ensuring Performance in a Fast-Paced Environment (CMG 2014)Ensuring Performance in a Fast-Paced Environment (CMG 2014)
Ensuring Performance in a Fast-Paced Environment (CMG 2014)
 
Weave GitOps 2022.09 Release: A Fast & Reliable Path to Production with Progr...
Weave GitOps 2022.09 Release: A Fast & Reliable Path to Production with Progr...Weave GitOps 2022.09 Release: A Fast & Reliable Path to Production with Progr...
Weave GitOps 2022.09 Release: A Fast & Reliable Path to Production with Progr...
 
Test parallelization using Jenkins
Test parallelization using JenkinsTest parallelization using Jenkins
Test parallelization using Jenkins
 
Lessons Learned from Migrating Legacy Enterprise Applications to Microservices
Lessons Learned from Migrating Legacy Enterprise Applications to MicroservicesLessons Learned from Migrating Legacy Enterprise Applications to Microservices
Lessons Learned from Migrating Legacy Enterprise Applications to Microservices
 
Code in the Cloud - December 8th 2014
Code in the Cloud - December 8th 2014Code in the Cloud - December 8th 2014
Code in the Cloud - December 8th 2014
 
Continuous integration at CartoDB March '16
Continuous integration at CartoDB March '16Continuous integration at CartoDB March '16
Continuous integration at CartoDB March '16
 
Making software development processes to work for you
Making software development processes to work for youMaking software development processes to work for you
Making software development processes to work for you
 
DevOps explained
DevOps explainedDevOps explained
DevOps explained
 
TestIstanbul 2015
TestIstanbul 2015TestIstanbul 2015
TestIstanbul 2015
 
Advanced deployment scenarios
Advanced deployment scenariosAdvanced deployment scenarios
Advanced deployment scenarios
 
Survival of the Continuist
Survival of the ContinuistSurvival of the Continuist
Survival of the Continuist
 
From 0 to DevOps in 80 Days [Webinar Replay]
From 0 to DevOps in 80 Days [Webinar Replay]From 0 to DevOps in 80 Days [Webinar Replay]
From 0 to DevOps in 80 Days [Webinar Replay]
 
Continuous Integration & the Release Maturity Model
Continuous Integration & the Release Maturity Model Continuous Integration & the Release Maturity Model
Continuous Integration & the Release Maturity Model
 
Advanced deployment scenarios (netcoreconf)
Advanced deployment scenarios (netcoreconf)Advanced deployment scenarios (netcoreconf)
Advanced deployment scenarios (netcoreconf)
 

Mais de UXDXConf

Breaking Silos_The Shift from a Software Delivery to a Product Development Mi...
Breaking Silos_The Shift from a Software Delivery to a Product Development Mi...Breaking Silos_The Shift from a Software Delivery to a Product Development Mi...
Breaking Silos_The Shift from a Software Delivery to a Product Development Mi...UXDXConf
 
How Intercom built ‘Fin’, a GPT-4 powered chatbot_Fergal Reid_UXDX_EMEA_2023
How Intercom built ‘Fin’, a GPT-4 powered chatbot_Fergal Reid_UXDX_EMEA_2023How Intercom built ‘Fin’, a GPT-4 powered chatbot_Fergal Reid_UXDX_EMEA_2023
How Intercom built ‘Fin’, a GPT-4 powered chatbot_Fergal Reid_UXDX_EMEA_2023UXDXConf
 
Leveling Up Design Maturity in a Large-Scale Organisation_ Daniel Heaslip_ U...
Leveling Up  Design Maturity in a Large-Scale Organisation_ Daniel Heaslip_ U...Leveling Up  Design Maturity in a Large-Scale Organisation_ Daniel Heaslip_ U...
Leveling Up Design Maturity in a Large-Scale Organisation_ Daniel Heaslip_ U...UXDXConf
 
Continuous-Research_Mike Brown_UXDX_ EMEA_2023
Continuous-Research_Mike Brown_UXDX_ EMEA_2023Continuous-Research_Mike Brown_UXDX_ EMEA_2023
Continuous-Research_Mike Brown_UXDX_ EMEA_2023UXDXConf
 
Crafting Digital Products for Connected Appliances and Other Stories_ Alexis ...
Crafting Digital Products for Connected Appliances and Other Stories_ Alexis ...Crafting Digital Products for Connected Appliances and Other Stories_ Alexis ...
Crafting Digital Products for Connected Appliances and Other Stories_ Alexis ...UXDXConf
 
Integrating AI _King's journey of Technology Transformation_Steven Collins_ U...
Integrating AI _King's journey of Technology Transformation_Steven Collins_ U...Integrating AI _King's journey of Technology Transformation_Steven Collins_ U...
Integrating AI _King's journey of Technology Transformation_Steven Collins_ U...UXDXConf
 
Seamless UX: Invisible Transactions_Sudev Balakrishan_UXDX_EMEA_2023
Seamless UX: Invisible Transactions_Sudev Balakrishan_UXDX_EMEA_2023Seamless UX: Invisible Transactions_Sudev Balakrishan_UXDX_EMEA_2023
Seamless UX: Invisible Transactions_Sudev Balakrishan_UXDX_EMEA_2023UXDXConf
 
Roadmaps Unveiled_ Lessons from successes, failures and the crucial role of s...
Roadmaps Unveiled_ Lessons from successes, failures and the crucial role of s...Roadmaps Unveiled_ Lessons from successes, failures and the crucial role of s...
Roadmaps Unveiled_ Lessons from successes, failures and the crucial role of s...UXDXConf
 
Operational Evolution_ Harnessing Design for Internal Business Transformation...
Operational Evolution_ Harnessing Design for Internal Business Transformation...Operational Evolution_ Harnessing Design for Internal Business Transformation...
Operational Evolution_ Harnessing Design for Internal Business Transformation...UXDXConf
 
Design Delivery Principles, Accelerating Product Delivery Outcomes in a Compl...
Design Delivery Principles, Accelerating Product Delivery Outcomes in a Compl...Design Delivery Principles, Accelerating Product Delivery Outcomes in a Compl...
Design Delivery Principles, Accelerating Product Delivery Outcomes in a Compl...UXDXConf
 
Innovation Without Adoption Is Meaningless_ Rhiannon White_ UXDX_ EMEA_2023
Innovation Without Adoption Is Meaningless_ Rhiannon White_ UXDX_ EMEA_2023Innovation Without Adoption Is Meaningless_ Rhiannon White_ UXDX_ EMEA_2023
Innovation Without Adoption Is Meaningless_ Rhiannon White_ UXDX_ EMEA_2023UXDXConf
 
Learning Balanced Leadership with Horses_Martina Hodges-Schell_ UXDX_ EMEA_2023
Learning Balanced Leadership with Horses_Martina Hodges-Schell_ UXDX_ EMEA_2023Learning Balanced Leadership with Horses_Martina Hodges-Schell_ UXDX_ EMEA_2023
Learning Balanced Leadership with Horses_Martina Hodges-Schell_ UXDX_ EMEA_2023UXDXConf
 
An Unexpected Approach to Design: Uncovering Hidden Parallels With Writing St...
An Unexpected Approach to Design: Uncovering Hidden Parallels With Writing St...An Unexpected Approach to Design: Uncovering Hidden Parallels With Writing St...
An Unexpected Approach to Design: Uncovering Hidden Parallels With Writing St...UXDXConf
 
Embracing Uncertainty in Product Delivery_ Martin Reilly_ UXDX_ EMEA_2023
Embracing Uncertainty in Product Delivery_ Martin Reilly_ UXDX_ EMEA_2023Embracing Uncertainty in Product Delivery_ Martin Reilly_ UXDX_ EMEA_2023
Embracing Uncertainty in Product Delivery_ Martin Reilly_ UXDX_ EMEA_2023UXDXConf
 
Embracing Career Pivots, Navigating Change, and Building a Motivated Remote T...
Embracing Career Pivots, Navigating Change, and Building a Motivated Remote T...Embracing Career Pivots, Navigating Change, and Building a Motivated Remote T...
Embracing Career Pivots, Navigating Change, and Building a Motivated Remote T...UXDXConf
 
Uncharted waters of design leadership_ Anderson Gomes_ UXDX_ EMEA_ 2023
Uncharted waters of design leadership_ Anderson Gomes_ UXDX_ EMEA_ 2023Uncharted waters of design leadership_ Anderson Gomes_ UXDX_ EMEA_ 2023
Uncharted waters of design leadership_ Anderson Gomes_ UXDX_ EMEA_ 2023UXDXConf
 
Enhancing the Impact of User Research_ Fahad Osmani_ UXDX_EMEA_2023
Enhancing the Impact of User Research_ Fahad Osmani_ UXDX_EMEA_2023Enhancing the Impact of User Research_ Fahad Osmani_ UXDX_EMEA_2023
Enhancing the Impact of User Research_ Fahad Osmani_ UXDX_EMEA_2023UXDXConf
 
How to Know Enough to Know You Don't Know_ Shilpi Sinha_UXDX_EMEA_2023
How to Know Enough to Know You Don't Know_ Shilpi Sinha_UXDX_EMEA_2023How to Know Enough to Know You Don't Know_ Shilpi Sinha_UXDX_EMEA_2023
How to Know Enough to Know You Don't Know_ Shilpi Sinha_UXDX_EMEA_2023UXDXConf
 
Lessons Learned From Our Accessibility-First Approach to Data Visualisation- ...
Lessons Learned From Our Accessibility-First Approach to Data Visualisation- ...Lessons Learned From Our Accessibility-First Approach to Data Visualisation- ...
Lessons Learned From Our Accessibility-First Approach to Data Visualisation- ...UXDXConf
 
Fostering a customer-centric culture at an enterprise_UXDX_EMEA_2023
Fostering a customer-centric culture at an enterprise_UXDX_EMEA_2023Fostering a customer-centric culture at an enterprise_UXDX_EMEA_2023
Fostering a customer-centric culture at an enterprise_UXDX_EMEA_2023UXDXConf
 

Mais de UXDXConf (20)

Breaking Silos_The Shift from a Software Delivery to a Product Development Mi...
Breaking Silos_The Shift from a Software Delivery to a Product Development Mi...Breaking Silos_The Shift from a Software Delivery to a Product Development Mi...
Breaking Silos_The Shift from a Software Delivery to a Product Development Mi...
 
How Intercom built ‘Fin’, a GPT-4 powered chatbot_Fergal Reid_UXDX_EMEA_2023
How Intercom built ‘Fin’, a GPT-4 powered chatbot_Fergal Reid_UXDX_EMEA_2023How Intercom built ‘Fin’, a GPT-4 powered chatbot_Fergal Reid_UXDX_EMEA_2023
How Intercom built ‘Fin’, a GPT-4 powered chatbot_Fergal Reid_UXDX_EMEA_2023
 
Leveling Up Design Maturity in a Large-Scale Organisation_ Daniel Heaslip_ U...
Leveling Up  Design Maturity in a Large-Scale Organisation_ Daniel Heaslip_ U...Leveling Up  Design Maturity in a Large-Scale Organisation_ Daniel Heaslip_ U...
Leveling Up Design Maturity in a Large-Scale Organisation_ Daniel Heaslip_ U...
 
Continuous-Research_Mike Brown_UXDX_ EMEA_2023
Continuous-Research_Mike Brown_UXDX_ EMEA_2023Continuous-Research_Mike Brown_UXDX_ EMEA_2023
Continuous-Research_Mike Brown_UXDX_ EMEA_2023
 
Crafting Digital Products for Connected Appliances and Other Stories_ Alexis ...
Crafting Digital Products for Connected Appliances and Other Stories_ Alexis ...Crafting Digital Products for Connected Appliances and Other Stories_ Alexis ...
Crafting Digital Products for Connected Appliances and Other Stories_ Alexis ...
 
Integrating AI _King's journey of Technology Transformation_Steven Collins_ U...
Integrating AI _King's journey of Technology Transformation_Steven Collins_ U...Integrating AI _King's journey of Technology Transformation_Steven Collins_ U...
Integrating AI _King's journey of Technology Transformation_Steven Collins_ U...
 
Seamless UX: Invisible Transactions_Sudev Balakrishan_UXDX_EMEA_2023
Seamless UX: Invisible Transactions_Sudev Balakrishan_UXDX_EMEA_2023Seamless UX: Invisible Transactions_Sudev Balakrishan_UXDX_EMEA_2023
Seamless UX: Invisible Transactions_Sudev Balakrishan_UXDX_EMEA_2023
 
Roadmaps Unveiled_ Lessons from successes, failures and the crucial role of s...
Roadmaps Unveiled_ Lessons from successes, failures and the crucial role of s...Roadmaps Unveiled_ Lessons from successes, failures and the crucial role of s...
Roadmaps Unveiled_ Lessons from successes, failures and the crucial role of s...
 
Operational Evolution_ Harnessing Design for Internal Business Transformation...
Operational Evolution_ Harnessing Design for Internal Business Transformation...Operational Evolution_ Harnessing Design for Internal Business Transformation...
Operational Evolution_ Harnessing Design for Internal Business Transformation...
 
Design Delivery Principles, Accelerating Product Delivery Outcomes in a Compl...
Design Delivery Principles, Accelerating Product Delivery Outcomes in a Compl...Design Delivery Principles, Accelerating Product Delivery Outcomes in a Compl...
Design Delivery Principles, Accelerating Product Delivery Outcomes in a Compl...
 
Innovation Without Adoption Is Meaningless_ Rhiannon White_ UXDX_ EMEA_2023
Innovation Without Adoption Is Meaningless_ Rhiannon White_ UXDX_ EMEA_2023Innovation Without Adoption Is Meaningless_ Rhiannon White_ UXDX_ EMEA_2023
Innovation Without Adoption Is Meaningless_ Rhiannon White_ UXDX_ EMEA_2023
 
Learning Balanced Leadership with Horses_Martina Hodges-Schell_ UXDX_ EMEA_2023
Learning Balanced Leadership with Horses_Martina Hodges-Schell_ UXDX_ EMEA_2023Learning Balanced Leadership with Horses_Martina Hodges-Schell_ UXDX_ EMEA_2023
Learning Balanced Leadership with Horses_Martina Hodges-Schell_ UXDX_ EMEA_2023
 
An Unexpected Approach to Design: Uncovering Hidden Parallels With Writing St...
An Unexpected Approach to Design: Uncovering Hidden Parallels With Writing St...An Unexpected Approach to Design: Uncovering Hidden Parallels With Writing St...
An Unexpected Approach to Design: Uncovering Hidden Parallels With Writing St...
 
Embracing Uncertainty in Product Delivery_ Martin Reilly_ UXDX_ EMEA_2023
Embracing Uncertainty in Product Delivery_ Martin Reilly_ UXDX_ EMEA_2023Embracing Uncertainty in Product Delivery_ Martin Reilly_ UXDX_ EMEA_2023
Embracing Uncertainty in Product Delivery_ Martin Reilly_ UXDX_ EMEA_2023
 
Embracing Career Pivots, Navigating Change, and Building a Motivated Remote T...
Embracing Career Pivots, Navigating Change, and Building a Motivated Remote T...Embracing Career Pivots, Navigating Change, and Building a Motivated Remote T...
Embracing Career Pivots, Navigating Change, and Building a Motivated Remote T...
 
Uncharted waters of design leadership_ Anderson Gomes_ UXDX_ EMEA_ 2023
Uncharted waters of design leadership_ Anderson Gomes_ UXDX_ EMEA_ 2023Uncharted waters of design leadership_ Anderson Gomes_ UXDX_ EMEA_ 2023
Uncharted waters of design leadership_ Anderson Gomes_ UXDX_ EMEA_ 2023
 
Enhancing the Impact of User Research_ Fahad Osmani_ UXDX_EMEA_2023
Enhancing the Impact of User Research_ Fahad Osmani_ UXDX_EMEA_2023Enhancing the Impact of User Research_ Fahad Osmani_ UXDX_EMEA_2023
Enhancing the Impact of User Research_ Fahad Osmani_ UXDX_EMEA_2023
 
How to Know Enough to Know You Don't Know_ Shilpi Sinha_UXDX_EMEA_2023
How to Know Enough to Know You Don't Know_ Shilpi Sinha_UXDX_EMEA_2023How to Know Enough to Know You Don't Know_ Shilpi Sinha_UXDX_EMEA_2023
How to Know Enough to Know You Don't Know_ Shilpi Sinha_UXDX_EMEA_2023
 
Lessons Learned From Our Accessibility-First Approach to Data Visualisation- ...
Lessons Learned From Our Accessibility-First Approach to Data Visualisation- ...Lessons Learned From Our Accessibility-First Approach to Data Visualisation- ...
Lessons Learned From Our Accessibility-First Approach to Data Visualisation- ...
 
Fostering a customer-centric culture at an enterprise_UXDX_EMEA_2023
Fostering a customer-centric culture at an enterprise_UXDX_EMEA_2023Fostering a customer-centric culture at an enterprise_UXDX_EMEA_2023
Fostering a customer-centric culture at an enterprise_UXDX_EMEA_2023
 

Último

Cybersecurity Workshop #1.pptx
Cybersecurity Workshop #1.pptxCybersecurity Workshop #1.pptx
Cybersecurity Workshop #1.pptxGDSC PJATK
 
IaC & GitOps in a Nutshell - a FridayInANuthshell Episode.pdf
IaC & GitOps in a Nutshell - a FridayInANuthshell Episode.pdfIaC & GitOps in a Nutshell - a FridayInANuthshell Episode.pdf
IaC & GitOps in a Nutshell - a FridayInANuthshell Episode.pdfDaniel Santiago Silva Capera
 
Linked Data in Production: Moving Beyond Ontologies
Linked Data in Production: Moving Beyond OntologiesLinked Data in Production: Moving Beyond Ontologies
Linked Data in Production: Moving Beyond OntologiesDavid Newbury
 
Machine Learning Model Validation (Aijun Zhang 2024).pdf
Machine Learning Model Validation (Aijun Zhang 2024).pdfMachine Learning Model Validation (Aijun Zhang 2024).pdf
Machine Learning Model Validation (Aijun Zhang 2024).pdfAijun Zhang
 
AI Fame Rush Review – Virtual Influencer Creation In Just Minutes
AI Fame Rush Review – Virtual Influencer Creation In Just MinutesAI Fame Rush Review – Virtual Influencer Creation In Just Minutes
AI Fame Rush Review – Virtual Influencer Creation In Just MinutesMd Hossain Ali
 
Meet the new FSP 3000 M-Flex800™
Meet the new FSP 3000 M-Flex800™Meet the new FSP 3000 M-Flex800™
Meet the new FSP 3000 M-Flex800™Adtran
 
UiPath Studio Web workshop series - Day 7
UiPath Studio Web workshop series - Day 7UiPath Studio Web workshop series - Day 7
UiPath Studio Web workshop series - Day 7DianaGray10
 
Connector Corner: Extending LLM automation use cases with UiPath GenAI connec...
Connector Corner: Extending LLM automation use cases with UiPath GenAI connec...Connector Corner: Extending LLM automation use cases with UiPath GenAI connec...
Connector Corner: Extending LLM automation use cases with UiPath GenAI connec...DianaGray10
 
Nanopower In Semiconductor Industry.pdf
Nanopower  In Semiconductor Industry.pdfNanopower  In Semiconductor Industry.pdf
Nanopower In Semiconductor Industry.pdfPedro Manuel
 
COMPUTER 10 Lesson 8 - Building a Website
COMPUTER 10 Lesson 8 - Building a WebsiteCOMPUTER 10 Lesson 8 - Building a Website
COMPUTER 10 Lesson 8 - Building a Websitedgelyza
 
Igniting Next Level Productivity with AI-Infused Data Integration Workflows
Igniting Next Level Productivity with AI-Infused Data Integration WorkflowsIgniting Next Level Productivity with AI-Infused Data Integration Workflows
Igniting Next Level Productivity with AI-Infused Data Integration WorkflowsSafe Software
 
UiPath Community: AI for UiPath Automation Developers
UiPath Community: AI for UiPath Automation DevelopersUiPath Community: AI for UiPath Automation Developers
UiPath Community: AI for UiPath Automation DevelopersUiPathCommunity
 
KubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCost
KubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCostKubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCost
KubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCostMatt Ray
 
Empowering Africa's Next Generation: The AI Leadership Blueprint
Empowering Africa's Next Generation: The AI Leadership BlueprintEmpowering Africa's Next Generation: The AI Leadership Blueprint
Empowering Africa's Next Generation: The AI Leadership BlueprintMahmoud Rabie
 
Secure your environment with UiPath and CyberArk technologies - Session 1
Secure your environment with UiPath and CyberArk technologies - Session 1Secure your environment with UiPath and CyberArk technologies - Session 1
Secure your environment with UiPath and CyberArk technologies - Session 1DianaGray10
 
Videogame localization & technology_ how to enhance the power of translation.pdf
Videogame localization & technology_ how to enhance the power of translation.pdfVideogame localization & technology_ how to enhance the power of translation.pdf
Videogame localization & technology_ how to enhance the power of translation.pdfinfogdgmi
 
The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...
The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...
The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...Aggregage
 
Bird eye's view on Camunda open source ecosystem
Bird eye's view on Camunda open source ecosystemBird eye's view on Camunda open source ecosystem
Bird eye's view on Camunda open source ecosystemAsko Soukka
 

Último (20)

20230104 - machine vision
20230104 - machine vision20230104 - machine vision
20230104 - machine vision
 
Cybersecurity Workshop #1.pptx
Cybersecurity Workshop #1.pptxCybersecurity Workshop #1.pptx
Cybersecurity Workshop #1.pptx
 
IaC & GitOps in a Nutshell - a FridayInANuthshell Episode.pdf
IaC & GitOps in a Nutshell - a FridayInANuthshell Episode.pdfIaC & GitOps in a Nutshell - a FridayInANuthshell Episode.pdf
IaC & GitOps in a Nutshell - a FridayInANuthshell Episode.pdf
 
Linked Data in Production: Moving Beyond Ontologies
Linked Data in Production: Moving Beyond OntologiesLinked Data in Production: Moving Beyond Ontologies
Linked Data in Production: Moving Beyond Ontologies
 
Machine Learning Model Validation (Aijun Zhang 2024).pdf
Machine Learning Model Validation (Aijun Zhang 2024).pdfMachine Learning Model Validation (Aijun Zhang 2024).pdf
Machine Learning Model Validation (Aijun Zhang 2024).pdf
 
AI Fame Rush Review – Virtual Influencer Creation In Just Minutes
AI Fame Rush Review – Virtual Influencer Creation In Just MinutesAI Fame Rush Review – Virtual Influencer Creation In Just Minutes
AI Fame Rush Review – Virtual Influencer Creation In Just Minutes
 
Meet the new FSP 3000 M-Flex800™
Meet the new FSP 3000 M-Flex800™Meet the new FSP 3000 M-Flex800™
Meet the new FSP 3000 M-Flex800™
 
UiPath Studio Web workshop series - Day 7
UiPath Studio Web workshop series - Day 7UiPath Studio Web workshop series - Day 7
UiPath Studio Web workshop series - Day 7
 
Connector Corner: Extending LLM automation use cases with UiPath GenAI connec...
Connector Corner: Extending LLM automation use cases with UiPath GenAI connec...Connector Corner: Extending LLM automation use cases with UiPath GenAI connec...
Connector Corner: Extending LLM automation use cases with UiPath GenAI connec...
 
Nanopower In Semiconductor Industry.pdf
Nanopower  In Semiconductor Industry.pdfNanopower  In Semiconductor Industry.pdf
Nanopower In Semiconductor Industry.pdf
 
COMPUTER 10 Lesson 8 - Building a Website
COMPUTER 10 Lesson 8 - Building a WebsiteCOMPUTER 10 Lesson 8 - Building a Website
COMPUTER 10 Lesson 8 - Building a Website
 
Igniting Next Level Productivity with AI-Infused Data Integration Workflows
Igniting Next Level Productivity with AI-Infused Data Integration WorkflowsIgniting Next Level Productivity with AI-Infused Data Integration Workflows
Igniting Next Level Productivity with AI-Infused Data Integration Workflows
 
UiPath Community: AI for UiPath Automation Developers
UiPath Community: AI for UiPath Automation DevelopersUiPath Community: AI for UiPath Automation Developers
UiPath Community: AI for UiPath Automation Developers
 
KubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCost
KubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCostKubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCost
KubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCost
 
Empowering Africa's Next Generation: The AI Leadership Blueprint
Empowering Africa's Next Generation: The AI Leadership BlueprintEmpowering Africa's Next Generation: The AI Leadership Blueprint
Empowering Africa's Next Generation: The AI Leadership Blueprint
 
Secure your environment with UiPath and CyberArk technologies - Session 1
Secure your environment with UiPath and CyberArk technologies - Session 1Secure your environment with UiPath and CyberArk technologies - Session 1
Secure your environment with UiPath and CyberArk technologies - Session 1
 
Videogame localization & technology_ how to enhance the power of translation.pdf
Videogame localization & technology_ how to enhance the power of translation.pdfVideogame localization & technology_ how to enhance the power of translation.pdf
Videogame localization & technology_ how to enhance the power of translation.pdf
 
The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...
The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...
The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...
 
Bird eye's view on Camunda open source ecosystem
Bird eye's view on Camunda open source ecosystemBird eye's view on Camunda open source ecosystem
Bird eye's view on Camunda open source ecosystem
 
20150722 - AGV
20150722 - AGV20150722 - AGV
20150722 - AGV
 

No Risk, No Reward: The Joys Of Testing In Production.

  • 1. No risk, no reward. The joys of testing in production. UXDX Dublin, May 2018 Fabio Cognigni (@faberoh), Natalia Bartol (@nataliabartol)
  • 6. Legacy vs. Tech Dreams ?
  • 7. Legacy vs. Tech Dreams ?
  • 8. Shipping on top of monolith staging prod QA devDevs QA Ops
  • 9. 1 (huge) system x 4 envs; 3 teams ● No clear ownership ● Slow iterations ● Difficult and risky operations ● Low maneuverability Deploy: weekly Ship new features: months Troubleshooting: days Shipping on top of monolith
  • 11. Killing the monolith: strangler pattern
  • 12. N services x 2 envs (staging, prod); 1 team (Devs) Power to the Devs via easy/automated deployments. No Ops! ● Deploy small changes, more frequently ● More control (easier troubleshooting) ● Faster iterations ● Higher code (and product) quality ● Ship new features independently Simplified deployment process
  • 13. Safe deployments Phased rollout to production: ● dark canary node ● live canary node ● live nodes Dark canary Live canary Live node 3 Live node 1 Live node 2 Production
  • 14. Microservices: challenges N services x 2 envs (staging, prod) - still quite complex! Maintaining a staging env becomes a headache: ● Infrastructure complexity & cost ● Fragile (never maintained with the same accuracy as prod) ● Bottleneck
  • 15. Why do we need staging? ● Storing test data separately from production data. ● Separating test traffic/load from prod load. ● Some (3rd party) features are only possible to test in staging. ● Sometimes testing against 3rd party staging is the only way to capture breaking changes before they end up in production.
  • 16. The way out of staging environments 1. Remove staging environments for “read-only” operations/domains (e.g. product catalog, inventory, navigation); 2. Use sandbox / test accounts for everything else https://mobile-api.hbc.com/organizations/saks/wishlists/... https://mobile-api.hbc.com/organizations/test/wishlists/... 1. It’s fine to hit production with traffic coming from tests.
  • 17. Developer-friendly production env ● Make code changes ● Create a Pull Request and get it reviewed ● Merge Pull Request ● Run unit tests ● Run integration tests - against production ● New release ● Validate / Showcase in dark ● Canary deployment
  • 18. Shipping new features with microservices N services x 1 env (prod); 1 team Deploy: daily Ship new features: weeks Troubleshoot: hours
  • 19. What could possibly go wrong? Not much, if you make sure to have: ● Very good monitoring ● Easy and quick rollback
  • 20. A Happy Place for Developers ● Own every phase of the SDLC. ● Release a product independently from other services the product depends upon. ● Test with confidence without the need for staging environment or stubbed data. ● Deploy at will.