SlideShare a Scribd company logo
1 of 87
Download to read offline
Continuous Deployment
   of Architectural Change

                          Matt Graham
                 Core Engineer @ Etsy
                  Continuous Deployer
#iasany
September 27, 2011
A Brief History of
    Deployment
The Internet
Web Applications
Agility
Continuous
Database Deployment @ Etsy




        Thursday
What it's all about

●   Broadly Applicable
●   Tools Help
●   Enables the Unfeasible
MTTR   vs   MTTF
MTTR          vs   MTTF
●   Cheaper for
    electrons
MTTR          vs       MTTF
●   Cheaper for        ●   Cheaper for
    electrons              protons & neutrons
MTTR          vs       MTTF
●   Cheaper for        ●   Cheaper for
    electrons              protons & neutrons
●   Cost prohibitive
    for humans
MTTR          vs       MTTF
●   Cheaper for        ●   Cheaper for
    electrons              protons & neutrons
●   Cost prohibitive
    for humans
●   Necessitates low
    MTTD
The Case of Electrons
●   Consider a project that has 6 bugs
●   continuous deployment testing misses 4
    & deploys fixes in 4 hours
●   monthly release testing misses only 2
    & deploys fixes in 24 hours
●   16 hours of broken < 48 hours of broken
Good Excuses


●   Infrequent Changes
Good Excuses


●   Infrequent Changes
●   Infrequent Executions
Good Excuses


●   Infrequent Changes
●   Infrequent Executions
●   Life and Death
Good Excuses


●   Infrequent Changes
●   Infrequent Executions
●   Life and Death
●   Physical Investment
Deployment Tools @ Etsy
Culture Before Tools

●   No planned deploys; only on demand
Culture Before Tools

●   No planned deploys; only on demand
●   A positive change is ready & tested
Culture Before Tools

●   No planned deploys; only on demand
●   A positive change is ready & tested
●   Software is stable & supported
Jenkins

●   Unit Tests
Jenkins

●   Unit Tests
●   Functional Tests
Jenkins

●   Unit Tests
●   Functional Tests
●   Manual Testing
Nagios & Naglite2




github.com/lozzd/Naglite2
tail -f | grep
github.com/etsy/deployinator
IRC
Key Tools


Communication Tools
      Graphs
  Feature Flags
Feature Flags


Deploy != Product Launch
Dark Launch

def get_feature_a_link():
  return ...
Dark Launch

def get_feature_a_link():
  if enabled('NewFeatureA'):
   return new_feature_a_link()
  else:
   return old_feature_a_link()
Dark Launch

application_config
  - NewFeatureA: admin
  - NewFeatureB: off
  - NewFeatureC: on
Ramp Up

application_config
  - NewFeatureA: 1%
  - NewFeatureB: off
  - NewFeatureC: on
Ramp Up

application_config
  - NewFeatureA: 5%
  - NewFeatureB: off
  - NewFeatureC: on
Ramp Up

application_config
  - NewFeatureA: 25%
  - NewFeatureB: off
  - NewFeatureC: on
Ramp Up

application_config
  - NewFeatureA: 100%
  - NewFeatureB: off
  - NewFeatureC: on
AB Testing


●   Prove success of interface changes

●   Prove interest in new features
Graphs!!!
Ganglia
Graphite
Event Overlay
StatsD
if ($success) {
  StatsD::timing('feature.runtime', $time);
} else {
  StatsD::increment('feature.failure');
}



       github.com/etsy/statsd
github.com/etsy/logster
github.com/etsy/logster
Community Communication
Forums / Message Boards
etsystatus.com
twitter.com/etsystatus
twitter.com/etsystatus
Deployment is First Class



    Deployment is a
  First Class Feature
Engineers are Users Too
Enable Architectural Change
Architecture is Relative
Organic Architecture
Premature Architecture
Premature Architecture

               What now?
Passing Time => Change
●   Scale
●   Product
●   Technology
●   Engineering Team
Passing Time => Change
●   Scale
●   Product
●   Technology
●   Engineering Team
●   The Correct Architecture Changes
Examples
●   Images From Twisted to PHP
●   From PostgreSQL to MySQL Shards
From Twisted to PHP
●   Run Apache/PHP on a new port
From Twisted to PHP
●   Run Apache/PHP on a new port
●   Implement one service in PHP
From Twisted to PHP
●   Run Apache/PHP on a new port
●   Implement one service in PHP
●   Ramp up users on new service
From Twisted to PHP
●   Run Apache/PHP on a new port
●   Implement one service in PHP
●   Ramp up users on new service
●   Repeat for remaining services
From Twisted to PHP
●   Run Apache/PHP on a new port
●   Implement one service in PHP
●   Ramp up users on new service
●   Repeat for remaining services
●   Shut down Twisted version
PostgreSQL to MySQL Shards
●   Migrate table by table
PostgreSQL to MySQL Shards
●   Migrate table by table
●   Teed writes to MySQL
PostgreSQL to MySQL Shards
●   Migrate table by table
●   Teed writes to MySQL
●   Backfill old data from PostgreSQL
PostgreSQL to MySQL Shards
●   Migrate table by table
●   Teed writes to MySQL
●   Backfill old data from PostgreSQL
●   Verify data matches in both DBs
PostgreSQL to MySQL Shards
●   Migrate table by table
●   Teed writes to MySQL
●   Backfill old data from PostgreSQL
●   Verify data matches in both DBs
●   Ramp up users reading from MySQL
PostgreSQL to MySQL Shards
●   Migrate table by table
●   Teed writes to MySQL
●   Backfill old data from PostgreSQL
●   Verify data matches in both DBs
●   Ramp up users reading from MySQL
●   Stop Postgres writes & drop tables
Continuous Deploy Pattern
●   Change in small steps
Continuous Deploy Pattern
●   Change in small steps
●   Dark launch placeholder via config
Continuous Deploy Pattern
●   Change in small steps
●   Dark launch placeholder via config
●   Deploy to production while dark
Continuous Deploy Pattern
●   Change in small steps
●   Dark launch placeholder via config
●   Deploy to production while dark
●   Maintain old & new in parallel
Continuous Deploy Pattern
●   Change in small steps
●   Dark launch placeholder via config
●   Deploy to production while dark
●   Maintain old & new in parallel
●   Ramp up to new architecture
Continuous Deploy Pattern
●   Change in small steps
●   Dark launch placeholder via config
●   Deploy to production while dark
●   Maintain old & new in parallel
●   Ramp up to new architecture
●   Remove old architecture
Review
●   Broadly applicable
●   Key Tools: Feature Flags, Graphs,
    Communication
●   Enables Architectural Change
●   It's really fun!!!
Continuous Deployment
of Architectural Change
Matt Graham
         http://twitter.com/lapsu
                  http://lapsu.tv

Core Engineer @ Etsy
Continuous Deployer
      http://codeascraft.etsy.com
We're Hiring!
   http://bit.ly/etsywantsawesome

More Related Content

What's hot

Parallel builds in Eclipse IDE workspace - EclispeCon Europe 2018
Parallel builds in Eclipse IDE workspace - EclispeCon Europe 2018Parallel builds in Eclipse IDE workspace - EclispeCon Europe 2018
Parallel builds in Eclipse IDE workspace - EclispeCon Europe 2018
Mickael Istria
 

What's hot (20)

SF JUG - Gradle Lint
SF JUG - Gradle LintSF JUG - Gradle Lint
SF JUG - Gradle Lint
 
Prometheus the future
Prometheus   the futurePrometheus   the future
Prometheus the future
 
Dev ops
Dev opsDev ops
Dev ops
 
100 tests per second - 40 releases per week
100 tests per second - 40 releases per week100 tests per second - 40 releases per week
100 tests per second - 40 releases per week
 
Introduction to K6
Introduction to K6Introduction to K6
Introduction to K6
 
Open Source Monitoring in 2019
Open Source Monitoring in 2019 Open Source Monitoring in 2019
Open Source Monitoring in 2019
 
Akka Persistence
Akka PersistenceAkka Persistence
Akka Persistence
 
Parallel builds in Eclipse IDE workspace - EclispeCon Europe 2018
Parallel builds in Eclipse IDE workspace - EclispeCon Europe 2018Parallel builds in Eclipse IDE workspace - EclispeCon Europe 2018
Parallel builds in Eclipse IDE workspace - EclispeCon Europe 2018
 
Migrating to Puppet 5
Migrating to Puppet 5Migrating to Puppet 5
Migrating to Puppet 5
 
PUG Romagna - Pipeline + Deployer PHP
PUG Romagna - Pipeline + Deployer PHPPUG Romagna - Pipeline + Deployer PHP
PUG Romagna - Pipeline + Deployer PHP
 
OSMC 2008 | Lessons in Nagios Learnt From Developing Opsview by Ton Voon
OSMC 2008 | Lessons in Nagios Learnt From Developing Opsview by Ton VoonOSMC 2008 | Lessons in Nagios Learnt From Developing Opsview by Ton Voon
OSMC 2008 | Lessons in Nagios Learnt From Developing Opsview by Ton Voon
 
Automating Your Way to Greatness by Combining OutSystems CI/CD With the Power...
Automating Your Way to Greatness by Combining OutSystems CI/CD With the Power...Automating Your Way to Greatness by Combining OutSystems CI/CD With the Power...
Automating Your Way to Greatness by Combining OutSystems CI/CD With the Power...
 
Improve the deployment process step by step
Improve the deployment process step by stepImprove the deployment process step by step
Improve the deployment process step by step
 
Angular Libraries & NPM
 Angular Libraries & NPM Angular Libraries & NPM
Angular Libraries & NPM
 
Droid con 2013 workshop unit testing in android [robolectirc]
Droid con 2013 workshop   unit testing in android [robolectirc]Droid con 2013 workshop   unit testing in android [robolectirc]
Droid con 2013 workshop unit testing in android [robolectirc]
 
Do You Git Your Code? Follow Simplified Gitflow Branching Model to Improve Pr...
Do You Git Your Code? Follow Simplified Gitflow Branching Model to Improve Pr...Do You Git Your Code? Follow Simplified Gitflow Branching Model to Improve Pr...
Do You Git Your Code? Follow Simplified Gitflow Branching Model to Improve Pr...
 
Henge
HengeHenge
Henge
 
Release & Iterate Faster: Stop Manual Testing
Release & Iterate Faster: Stop Manual TestingRelease & Iterate Faster: Stop Manual Testing
Release & Iterate Faster: Stop Manual Testing
 
20150314 - Functional Testing for Configuration Management @ Cascadia IT Con...
20150314  - Functional Testing for Configuration Management @ Cascadia IT Con...20150314  - Functional Testing for Configuration Management @ Cascadia IT Con...
20150314 - Functional Testing for Configuration Management @ Cascadia IT Con...
 
QA methodology by Quality Tech
QA methodology  by Quality TechQA methodology  by Quality Tech
QA methodology by Quality Tech
 

Viewers also liked

Transforming Search in the Digital Marketplace
Transforming Search in the Digital MarketplaceTransforming Search in the Digital Marketplace
Transforming Search in the Digital Marketplace
Jason Davis
 
AWS Summit Milan - Continuous Deployment
AWS Summit Milan - Continuous DeploymentAWS Summit Milan - Continuous Deployment
AWS Summit Milan - Continuous Deployment
Amazon Web Services
 
Continuous Deployment with Amazon Web Services by Carlos Conde
Continuous Deployment with Amazon Web Services by Carlos Conde Continuous Deployment with Amazon Web Services by Carlos Conde
Continuous Deployment with Amazon Web Services by Carlos Conde
Codemotion
 
Continuous Deployment at Etsy - SXSW 2012 Lean Startup Track
Continuous Deployment at Etsy - SXSW 2012 Lean Startup TrackContinuous Deployment at Etsy - SXSW 2012 Lean Startup Track
Continuous Deployment at Etsy - SXSW 2012 Lean Startup Track
Chad Dickerson
 
Smarter ways to do selenium automation @ work, Selenium, automation
Smarter ways to do selenium automation @ work, Selenium, automationSmarter ways to do selenium automation @ work, Selenium, automation
Smarter ways to do selenium automation @ work, Selenium, automation
RIA RUI Society
 

Viewers also liked (20)

Data mining for_product_search
Data mining for_product_searchData mining for_product_search
Data mining for_product_search
 
Scaling Selenium
Scaling SeleniumScaling Selenium
Scaling Selenium
 
Feature Flagging your Infrastructure for Fun and Profit
Feature Flagging your Infrastructure for Fun and ProfitFeature Flagging your Infrastructure for Fun and Profit
Feature Flagging your Infrastructure for Fun and Profit
 
Transforming Search in the Digital Marketplace
Transforming Search in the Digital MarketplaceTransforming Search in the Digital Marketplace
Transforming Search in the Digital Marketplace
 
Are Your Tests Really Helping You?
Are Your Tests Really Helping You?Are Your Tests Really Helping You?
Are Your Tests Really Helping You?
 
Etsy chef-workflow
Etsy chef-workflowEtsy chef-workflow
Etsy chef-workflow
 
AWS Summit Milan - Continuous Deployment
AWS Summit Milan - Continuous DeploymentAWS Summit Milan - Continuous Deployment
AWS Summit Milan - Continuous Deployment
 
Continuous Deployment with Amazon Web Services by Carlos Conde
Continuous Deployment with Amazon Web Services by Carlos Conde Continuous Deployment with Amazon Web Services by Carlos Conde
Continuous Deployment with Amazon Web Services by Carlos Conde
 
Advanced Topics - Session 1 - Continuous Deployment Practices on AWS
Advanced Topics - Session 1 - Continuous Deployment Practices on AWSAdvanced Topics - Session 1 - Continuous Deployment Practices on AWS
Advanced Topics - Session 1 - Continuous Deployment Practices on AWS
 
Continuous Deployment
Continuous DeploymentContinuous Deployment
Continuous Deployment
 
Continuous Deployment at Etsy - SXSW 2012 Lean Startup Track
Continuous Deployment at Etsy - SXSW 2012 Lean Startup TrackContinuous Deployment at Etsy - SXSW 2012 Lean Startup Track
Continuous Deployment at Etsy - SXSW 2012 Lean Startup Track
 
Continuous Delivery: The Dirty Details
Continuous Delivery: The Dirty DetailsContinuous Delivery: The Dirty Details
Continuous Delivery: The Dirty Details
 
Continuous Delivery at Netflix
Continuous Delivery at NetflixContinuous Delivery at Netflix
Continuous Delivery at Netflix
 
Testing with Jenkins, Selenium and Continuous Deployment
Testing with Jenkins, Selenium and Continuous DeploymentTesting with Jenkins, Selenium and Continuous Deployment
Testing with Jenkins, Selenium and Continuous Deployment
 
The road to continuous deployment: a case study (DPC16)
The road to continuous deployment: a case study (DPC16)The road to continuous deployment: a case study (DPC16)
The road to continuous deployment: a case study (DPC16)
 
Smarter ways to do selenium automation @ work, Selenium, automation
Smarter ways to do selenium automation @ work, Selenium, automationSmarter ways to do selenium automation @ work, Selenium, automation
Smarter ways to do selenium automation @ work, Selenium, automation
 
Continuous deployment-at-flipkart
Continuous deployment-at-flipkartContinuous deployment-at-flipkart
Continuous deployment-at-flipkart
 
Continuous Deployment: The Dirty Details
Continuous Deployment: The Dirty DetailsContinuous Deployment: The Dirty Details
Continuous Deployment: The Dirty Details
 
Continuous Deployment with Kubernetes, Docker and GitLab CI
Continuous Deployment with Kubernetes, Docker and GitLab CIContinuous Deployment with Kubernetes, Docker and GitLab CI
Continuous Deployment with Kubernetes, Docker and GitLab CI
 
Continuous Deployment Practices, with Production, Test and Development Enviro...
Continuous Deployment Practices, with Production, Test and Development Enviro...Continuous Deployment Practices, with Production, Test and Development Enviro...
Continuous Deployment Practices, with Production, Test and Development Enviro...
 

Similar to Continuous Deployment of Architectural Change

Beyond unit tests: Deployment and testing for Hadoop/Spark workflows
Beyond unit tests: Deployment and testing for Hadoop/Spark workflowsBeyond unit tests: Deployment and testing for Hadoop/Spark workflows
Beyond unit tests: Deployment and testing for Hadoop/Spark workflows
DataWorks Summit
 
RandomTest - Random Software Integration Tests That Just Work for C/C++, Java...
RandomTest - Random Software Integration Tests That Just Work for C/C++, Java...RandomTest - Random Software Integration Tests That Just Work for C/C++, Java...
RandomTest - Random Software Integration Tests That Just Work for C/C++, Java...
dcieslak
 

Similar to Continuous Deployment of Architectural Change (20)

Code review and automated testing for Puppet code
Code review and automated testing for Puppet codeCode review and automated testing for Puppet code
Code review and automated testing for Puppet code
 
Continuous Delivery at Snyk
Continuous Delivery at SnykContinuous Delivery at Snyk
Continuous Delivery at Snyk
 
Beyond unit tests: Deployment and testing for Hadoop/Spark workflows
Beyond unit tests: Deployment and testing for Hadoop/Spark workflowsBeyond unit tests: Deployment and testing for Hadoop/Spark workflows
Beyond unit tests: Deployment and testing for Hadoop/Spark workflows
 
Unit testing legacy code
Unit testing legacy codeUnit testing legacy code
Unit testing legacy code
 
Trunk based development
Trunk based developmentTrunk based development
Trunk based development
 
Rails data migrations
Rails data migrationsRails data migrations
Rails data migrations
 
Yet Another Continuous Integration Story
Yet Another Continuous Integration StoryYet Another Continuous Integration Story
Yet Another Continuous Integration Story
 
Monitoring and automation
Monitoring and automationMonitoring and automation
Monitoring and automation
 
Cloud Native CI/CD with Spring Cloud Pipelines
Cloud Native CI/CD with Spring Cloud PipelinesCloud Native CI/CD with Spring Cloud Pipelines
Cloud Native CI/CD with Spring Cloud Pipelines
 
Cloud Native CI/CD with Spring Cloud Pipelines
Cloud Native CI/CD with Spring Cloud PipelinesCloud Native CI/CD with Spring Cloud Pipelines
Cloud Native CI/CD with Spring Cloud Pipelines
 
Continuous Infrastructure First
Continuous Infrastructure FirstContinuous Infrastructure First
Continuous Infrastructure First
 
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)
 
Performance in Geode: How Fast Is It, How Is It Measured, and How Can It Be I...
Performance in Geode: How Fast Is It, How Is It Measured, and How Can It Be I...Performance in Geode: How Fast Is It, How Is It Measured, and How Can It Be I...
Performance in Geode: How Fast Is It, How Is It Measured, and How Can It Be I...
 
Pinto+Stratopan+Love
Pinto+Stratopan+LovePinto+Stratopan+Love
Pinto+Stratopan+Love
 
RandomTest - Random Software Integration Tests That Just Work for C/C++, Java...
RandomTest - Random Software Integration Tests That Just Work for C/C++, Java...RandomTest - Random Software Integration Tests That Just Work for C/C++, Java...
RandomTest - Random Software Integration Tests That Just Work for C/C++, Java...
 
CD in Machine Learning Systems
CD in Machine Learning SystemsCD in Machine Learning Systems
CD in Machine Learning Systems
 
Cocktail of Environments. How to Mix Test and Development Environments and St...
Cocktail of Environments. How to Mix Test and Development Environments and St...Cocktail of Environments. How to Mix Test and Development Environments and St...
Cocktail of Environments. How to Mix Test and Development Environments and St...
 
Your Testing Is Flawed: Introducing A New Open Source Tool For Accurate Kuber...
Your Testing Is Flawed: Introducing A New Open Source Tool For Accurate Kuber...Your Testing Is Flawed: Introducing A New Open Source Tool For Accurate Kuber...
Your Testing Is Flawed: Introducing A New Open Source Tool For Accurate Kuber...
 
stackconf 2022: Infrastructure Automation (anti) patterns
stackconf 2022: Infrastructure Automation (anti) patternsstackconf 2022: Infrastructure Automation (anti) patterns
stackconf 2022: Infrastructure Automation (anti) patterns
 
Infrastructure as Code Patterns
Infrastructure as Code PatternsInfrastructure as Code Patterns
Infrastructure as Code Patterns
 

Recently uploaded

Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
giselly40
 

Recently uploaded (20)

08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 

Continuous Deployment of Architectural Change