SlideShare uma empresa Scribd logo
1 de 13
Designing a DevOps
Dependency Diagram to Decide
Development Direction
LAST 2019
Hear an interesting story:
Learn something:
Get ideas:
What you’ll (hopefully) get out of this talk
DevOps = 0 → DevOps > 0
DevOps Dependencies
Planning DevOps Progression
Background: History
● 5 year old company
○ Produces SaaS Project Management Software
● Development outsourced
○ Insourcing development (owning core IP)
● Moving from startup to scaleup
○ Industrialisation
Background: Strengths and Weaknesses
Strengths
Company
● Product validated in the market
○ Multiple customers who are strong
advocates of the product
● Positive culture
○ Ego-less, highly experienced, willing to
listen
● Committed and willing to invest in
development
Development
● Using git
● Have some unit tests
● Have extensive functional tests
● Scripts to manage deployment
Weaknesses
Company
● Nobody in the company has any Software
Product Development experience
● Communication difficulties to Vietnam, so
require very prescriptive requirements
Development
A bit more extensive...
Background: Weaknesses (Development)
● Git: Unmanageable and divergent branching
● Testing
○ No CI
○ Unit tests: run once a month. Don’t all pass
○ Functional tests: 30% fail rate (i.e. useless)
● Deployment
○ Snowflake servers (no IaC)
○ Changes are run directly on production
○ Each environment has completely different
script, and it changes each release
○ Deployments: SSH to prod, git pull, restart
apache
● No monitoring or alerting
● Code:
○ General quality / maintainability
○ DRY = DO Repeat Yourself
Git branching strategy
Background: Challenges
● Transition from outsourced to insourced
○ Knowledge transfer difficult with communication barrier
● Commitments requiring premature maturity
○ AWS Well Architected Review
■ Requires autoscaling
○ SOC2
● Company full of Project Managers (need a plan)
● No experience with software development
○ E.g. Currently have a linear view of software development (no understanding of dependencies)
● Monolith Architecture
● Multiple production environments
Background: Challenges: SOC2
● SOC2: Service and Organization Controls
○ Provide an organization a way to demonstrate that security practices are in place and
operating effectively
● Some SOC2 Controls relating to development
○ Security: E.g.
■ Pen testing
■ Vulnerability scanning
■ Intrusion detection
■ Security incident analysis
○ Change Control: E.g.
■ Minimal admin access
■ Configuration monitoring
■ Segregation of duties (dev from ops)
■ Strict approval and Change Management process
Idea: design a DevOps dependency diagram
Different areas of Devops. E.g.
● Build automation
● Testing
● Deployment
● End-to-end testing
● Monitoring
● Infrastructure
● Configuration management
● Reporting
● etc
Automated
build
framework
Tasks with dependencies. E.g.
Unit tests run
automatically
Continuous
Integration
Continuous
Integration
Milestones. E.g.
Continuous
Deployment
What we did
Full version is here:
https://drive.google.com/file/d/1zJRATfrzF20uoN4
Z2zuCBCL8UmdYXUWV
Progression
Progression:
https://drive.google.com/file/d/1fe8rEQXGPAEJ9_8V66Ei
SYKOFhAOaRno
Final state:
https://drive.google.com/file/d/1NNkVJJ3ZY29NLfGSjWP
EwB2gALUHUTZv
Limitations of the diagram
● Iteration / improvement of progress of certain tasks
○ E.g. IaC or CI may be “done” once in place, but constantly improve over time
● Any remediation that does not have a definitive goal:
○ Code tech debt
○ Performance
○ Splitting out of services
○ Quality of testing
Questions

Mais conteúdo relacionado

Mais procurados

Michael mittigaresume.docx (1)
Michael mittigaresume.docx (1)Michael mittigaresume.docx (1)
Michael mittigaresume.docx (1)Michael Mittiga
 
technical debt management strategies
technical debt management strategiestechnical debt management strategies
technical debt management strategiesRaquel Pau
 
Clean application development tutorial
Clean application development tutorialClean application development tutorial
Clean application development tutorialAdam Culp
 
Clean application development (talk)
Clean application development (talk)Clean application development (talk)
Clean application development (talk)Adam Culp
 
Trunk based development ritabrata
Trunk based development ritabrataTrunk based development ritabrata
Trunk based development ritabrataapgionline
 
Agile engineering environment 50 minutes or less
Agile engineering environment   50 minutes or lessAgile engineering environment   50 minutes or less
Agile engineering environment 50 minutes or lessVernon Stinebaker
 
Agile Development Methodologies
Agile Development MethodologiesAgile Development Methodologies
Agile Development MethodologiesNainil Chheda
 
Agile model in software testing
Agile model in software testingAgile model in software testing
Agile model in software testingpooja deshmukh
 
San Francisco Jenkins Area Meetup October 2016: Self-service secure test and ...
San Francisco Jenkins Area Meetup October 2016: Self-service secure test and ...San Francisco Jenkins Area Meetup October 2016: Self-service secure test and ...
San Francisco Jenkins Area Meetup October 2016: Self-service secure test and ...Andrey Falko
 
Working process and git branch strategy
Working process and git branch strategyWorking process and git branch strategy
Working process and git branch strategyKan-Han (John) Lu
 
Conway's transformation
Conway's transformationConway's transformation
Conway's transformationAlexey Tokar
 
Implementing a Continuous Delivery pipeline using OW2 infrastructure, OW2con'...
Implementing a Continuous Delivery pipeline using OW2 infrastructure, OW2con'...Implementing a Continuous Delivery pipeline using OW2 infrastructure, OW2con'...
Implementing a Continuous Delivery pipeline using OW2 infrastructure, OW2con'...OW2
 
The Holy Trinity of UI Testing by Diego Molina
The Holy Trinity of UI Testing by Diego MolinaThe Holy Trinity of UI Testing by Diego Molina
The Holy Trinity of UI Testing by Diego MolinaSauce Labs
 

Mais procurados (19)

Michael mittigaresume.docx (1)
Michael mittigaresume.docx (1)Michael mittigaresume.docx (1)
Michael mittigaresume.docx (1)
 
technical debt management strategies
technical debt management strategiestechnical debt management strategies
technical debt management strategies
 
Clean application development tutorial
Clean application development tutorialClean application development tutorial
Clean application development tutorial
 
SDLC-Waterfall-Model
SDLC-Waterfall-ModelSDLC-Waterfall-Model
SDLC-Waterfall-Model
 
CI/CD in the serverless era
CI/CD in the serverless eraCI/CD in the serverless era
CI/CD in the serverless era
 
Clean application development (talk)
Clean application development (talk)Clean application development (talk)
Clean application development (talk)
 
Dotsoft's tech stack
Dotsoft's tech stackDotsoft's tech stack
Dotsoft's tech stack
 
Trunk based development ritabrata
Trunk based development ritabrataTrunk based development ritabrata
Trunk based development ritabrata
 
Agile engineering environment 50 minutes or less
Agile engineering environment   50 minutes or lessAgile engineering environment   50 minutes or less
Agile engineering environment 50 minutes or less
 
Wpm lecture#2
Wpm lecture#2Wpm lecture#2
Wpm lecture#2
 
Agile Development Methodologies
Agile Development MethodologiesAgile Development Methodologies
Agile Development Methodologies
 
Agile model in software testing
Agile model in software testingAgile model in software testing
Agile model in software testing
 
San Francisco Jenkins Area Meetup October 2016: Self-service secure test and ...
San Francisco Jenkins Area Meetup October 2016: Self-service secure test and ...San Francisco Jenkins Area Meetup October 2016: Self-service secure test and ...
San Francisco Jenkins Area Meetup October 2016: Self-service secure test and ...
 
Working process and git branch strategy
Working process and git branch strategyWorking process and git branch strategy
Working process and git branch strategy
 
Conway's transformation
Conway's transformationConway's transformation
Conway's transformation
 
Transition from CI to CD
Transition from CI to CDTransition from CI to CD
Transition from CI to CD
 
Implementing a Continuous Delivery pipeline using OW2 infrastructure, OW2con'...
Implementing a Continuous Delivery pipeline using OW2 infrastructure, OW2con'...Implementing a Continuous Delivery pipeline using OW2 infrastructure, OW2con'...
Implementing a Continuous Delivery pipeline using OW2 infrastructure, OW2con'...
 
SCCM
SCCMSCCM
SCCM
 
The Holy Trinity of UI Testing by Diego Molina
The Holy Trinity of UI Testing by Diego MolinaThe Holy Trinity of UI Testing by Diego Molina
The Holy Trinity of UI Testing by Diego Molina
 

Semelhante a Last 2019: Designing a DevOps Dependency Diagram to Decide Development Direction

3x3: Speeding Up Mobile Releases
3x3: Speeding Up Mobile Releases3x3: Speeding Up Mobile Releases
3x3: Speeding Up Mobile ReleasesDrew Hannay
 
Expedia 3x3 presentation
Expedia 3x3 presentationExpedia 3x3 presentation
Expedia 3x3 presentationDrew Hannay
 
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
 
Evolving to Cloud-Native - Anand Rao
Evolving to Cloud-Native - Anand RaoEvolving to Cloud-Native - Anand Rao
Evolving to Cloud-Native - Anand RaoVMware Tanzu
 
Continuous Delivery: 5 years later (Incontro DevOps 2018)
Continuous Delivery: 5 years later (Incontro DevOps 2018)Continuous Delivery: 5 years later (Incontro DevOps 2018)
Continuous Delivery: 5 years later (Incontro DevOps 2018)Giovanni Toraldo
 
Transforming PropertyGuru's Delivery Pipeline
Transforming PropertyGuru's Delivery PipelineTransforming PropertyGuru's Delivery Pipeline
Transforming PropertyGuru's Delivery PipelineDwi Sasongko Supriyadi
 
Testing in a continuous delivery environment
Testing in a continuous delivery environmentTesting in a continuous delivery environment
Testing in a continuous delivery environmentStefan Verhoeff
 
High Performance Software Engineering Teams
High Performance Software Engineering TeamsHigh Performance Software Engineering Teams
High Performance Software Engineering TeamsLars Thorup
 
Acjim acmacs presentation
Acjim acmacs presentationAcjim acmacs presentation
Acjim acmacs presentationhda_jim
 
Introduction to DevOps
Introduction to DevOpsIntroduction to DevOps
Introduction to DevOpsYosef Tavin
 
Acjim acmacs presentation
Acjim acmacs presentationAcjim acmacs presentation
Acjim acmacs presentationRohan Maleku
 
QCon'17 talk: CI/CD at scale - lessons from LinkedIn and Mockito
QCon'17 talk: CI/CD at scale - lessons from LinkedIn and MockitoQCon'17 talk: CI/CD at scale - lessons from LinkedIn and Mockito
QCon'17 talk: CI/CD at scale - lessons from LinkedIn and MockitoSzczepan Faber
 
Agile Gurugram 2016 | Conference | Demystifying DevOps | Uday Kumar
Agile Gurugram 2016 | Conference | Demystifying DevOps | Uday KumarAgile Gurugram 2016 | Conference | Demystifying DevOps | Uday Kumar
Agile Gurugram 2016 | Conference | Demystifying DevOps | Uday KumarAgileNetwork
 
Prepare the sled in summer and project release at its beginning
Prepare the sled in summer and project release at its beginningPrepare the sled in summer and project release at its beginning
Prepare the sled in summer and project release at its beginningVadym Fedorov
 
Agile Development Lifecycle and Best Practices with Denodo
Agile Development Lifecycle and Best Practices with DenodoAgile Development Lifecycle and Best Practices with Denodo
Agile Development Lifecycle and Best Practices with DenodoDenodo
 
DevOps for TYPO3 Teams and Projects
DevOps for TYPO3 Teams and ProjectsDevOps for TYPO3 Teams and Projects
DevOps for TYPO3 Teams and ProjectsFedir RYKHTIK
 
Creating An App for 650 million customers v.2.pdf
Creating An App for 650 million customers v.2.pdfCreating An App for 650 million customers v.2.pdf
Creating An App for 650 million customers v.2.pdfDmitry Osipa
 

Semelhante a Last 2019: Designing a DevOps Dependency Diagram to Decide Development Direction (20)

3x3 Speeding Up Mobile Releases
3x3 Speeding Up Mobile Releases3x3 Speeding Up Mobile Releases
3x3 Speeding Up Mobile Releases
 
3x3: Speeding Up Mobile Releases
3x3: Speeding Up Mobile Releases3x3: Speeding Up Mobile Releases
3x3: Speeding Up Mobile Releases
 
Expedia 3x3 presentation
Expedia 3x3 presentationExpedia 3x3 presentation
Expedia 3x3 presentation
 
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...
 
Evolving to Cloud-Native - Anand Rao
Evolving to Cloud-Native - Anand RaoEvolving to Cloud-Native - Anand Rao
Evolving to Cloud-Native - Anand Rao
 
Continuous Delivery: 5 years later (Incontro DevOps 2018)
Continuous Delivery: 5 years later (Incontro DevOps 2018)Continuous Delivery: 5 years later (Incontro DevOps 2018)
Continuous Delivery: 5 years later (Incontro DevOps 2018)
 
Transforming PropertyGuru's Delivery Pipeline
Transforming PropertyGuru's Delivery PipelineTransforming PropertyGuru's Delivery Pipeline
Transforming PropertyGuru's Delivery Pipeline
 
Testing in a continuous delivery environment
Testing in a continuous delivery environmentTesting in a continuous delivery environment
Testing in a continuous delivery environment
 
Demystifying Devops - Uday kumar
Demystifying Devops - Uday kumarDemystifying Devops - Uday kumar
Demystifying Devops - Uday kumar
 
High Performance Software Engineering Teams
High Performance Software Engineering TeamsHigh Performance Software Engineering Teams
High Performance Software Engineering Teams
 
Acjim acmacs presentation
Acjim acmacs presentationAcjim acmacs presentation
Acjim acmacs presentation
 
Introduction to DevOps
Introduction to DevOpsIntroduction to DevOps
Introduction to DevOps
 
Acjim acmacs presentation
Acjim acmacs presentationAcjim acmacs presentation
Acjim acmacs presentation
 
QCon'17 talk: CI/CD at scale - lessons from LinkedIn and Mockito
QCon'17 talk: CI/CD at scale - lessons from LinkedIn and MockitoQCon'17 talk: CI/CD at scale - lessons from LinkedIn and Mockito
QCon'17 talk: CI/CD at scale - lessons from LinkedIn and Mockito
 
Agile Gurugram 2016 | Conference | Demystifying DevOps | Uday Kumar
Agile Gurugram 2016 | Conference | Demystifying DevOps | Uday KumarAgile Gurugram 2016 | Conference | Demystifying DevOps | Uday Kumar
Agile Gurugram 2016 | Conference | Demystifying DevOps | Uday Kumar
 
Prepare the sled in summer and project release at its beginning
Prepare the sled in summer and project release at its beginningPrepare the sled in summer and project release at its beginning
Prepare the sled in summer and project release at its beginning
 
Dev ops
Dev opsDev ops
Dev ops
 
Agile Development Lifecycle and Best Practices with Denodo
Agile Development Lifecycle and Best Practices with DenodoAgile Development Lifecycle and Best Practices with Denodo
Agile Development Lifecycle and Best Practices with Denodo
 
DevOps for TYPO3 Teams and Projects
DevOps for TYPO3 Teams and ProjectsDevOps for TYPO3 Teams and Projects
DevOps for TYPO3 Teams and Projects
 
Creating An App for 650 million customers v.2.pdf
Creating An App for 650 million customers v.2.pdfCreating An App for 650 million customers v.2.pdf
Creating An App for 650 million customers v.2.pdf
 

Último

DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamUiPathCommunity
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Zilliz
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWERMadyBayot
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...apidays
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobeapidays
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdfSandro Moreira
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsNanddeep Nachan
 
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelDeepika Singh
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...apidays
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MIND CTI
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024The Digital Insurer
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyKhushali Kathiriya
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...Zilliz
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
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 WorkerThousandEyes
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc
 

Último (20)

DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
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
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 

Last 2019: Designing a DevOps Dependency Diagram to Decide Development Direction

  • 1. Designing a DevOps Dependency Diagram to Decide Development Direction LAST 2019
  • 2.
  • 3. Hear an interesting story: Learn something: Get ideas: What you’ll (hopefully) get out of this talk DevOps = 0 → DevOps > 0 DevOps Dependencies Planning DevOps Progression
  • 4. Background: History ● 5 year old company ○ Produces SaaS Project Management Software ● Development outsourced ○ Insourcing development (owning core IP) ● Moving from startup to scaleup ○ Industrialisation
  • 5. Background: Strengths and Weaknesses Strengths Company ● Product validated in the market ○ Multiple customers who are strong advocates of the product ● Positive culture ○ Ego-less, highly experienced, willing to listen ● Committed and willing to invest in development Development ● Using git ● Have some unit tests ● Have extensive functional tests ● Scripts to manage deployment Weaknesses Company ● Nobody in the company has any Software Product Development experience ● Communication difficulties to Vietnam, so require very prescriptive requirements Development A bit more extensive...
  • 6. Background: Weaknesses (Development) ● Git: Unmanageable and divergent branching ● Testing ○ No CI ○ Unit tests: run once a month. Don’t all pass ○ Functional tests: 30% fail rate (i.e. useless) ● Deployment ○ Snowflake servers (no IaC) ○ Changes are run directly on production ○ Each environment has completely different script, and it changes each release ○ Deployments: SSH to prod, git pull, restart apache ● No monitoring or alerting ● Code: ○ General quality / maintainability ○ DRY = DO Repeat Yourself Git branching strategy
  • 7. Background: Challenges ● Transition from outsourced to insourced ○ Knowledge transfer difficult with communication barrier ● Commitments requiring premature maturity ○ AWS Well Architected Review ■ Requires autoscaling ○ SOC2 ● Company full of Project Managers (need a plan) ● No experience with software development ○ E.g. Currently have a linear view of software development (no understanding of dependencies) ● Monolith Architecture ● Multiple production environments
  • 8. Background: Challenges: SOC2 ● SOC2: Service and Organization Controls ○ Provide an organization a way to demonstrate that security practices are in place and operating effectively ● Some SOC2 Controls relating to development ○ Security: E.g. ■ Pen testing ■ Vulnerability scanning ■ Intrusion detection ■ Security incident analysis ○ Change Control: E.g. ■ Minimal admin access ■ Configuration monitoring ■ Segregation of duties (dev from ops) ■ Strict approval and Change Management process
  • 9. Idea: design a DevOps dependency diagram Different areas of Devops. E.g. ● Build automation ● Testing ● Deployment ● End-to-end testing ● Monitoring ● Infrastructure ● Configuration management ● Reporting ● etc Automated build framework Tasks with dependencies. E.g. Unit tests run automatically Continuous Integration Continuous Integration Milestones. E.g. Continuous Deployment
  • 10. What we did Full version is here: https://drive.google.com/file/d/1zJRATfrzF20uoN4 Z2zuCBCL8UmdYXUWV
  • 12. Limitations of the diagram ● Iteration / improvement of progress of certain tasks ○ E.g. IaC or CI may be “done” once in place, but constantly improve over time ● Any remediation that does not have a definitive goal: ○ Code tech debt ○ Performance ○ Splitting out of services ○ Quality of testing

Notas do Editor

  1. Timeline https://docs.google.com/spreadsheets/d/1ofAzbXn2eatNl3ycjhEUy-s3kbIPoX6LAMVs6I62xIU/edit#gid=0
  2. Image sources: https://pixabay.com/illustrations/people-men-women-man-woman-220284/ https://en.wikipedia.org/wiki/Flag_of_Vietnam#/media/File:Flag_of_Vietnam.svg
  3. Linear ideas: Set up performance testing Automated deployment Auto scaling
  4. Remembered a talk from LAST a few years ago Micro Hering presented a dependency diagram E.g.
  5. A full verision of the diagram is up at https://drive.google.com/file/d/1zJRATfrzF20uoN4Z2zuCBCL8UmdYXUWV/view?usp=sharing