SlideShare ist ein Scribd-Unternehmen logo
1 von 40
Š COPYRIGHT 2018 COVEROS, INC. ALL RIGHTS RESERVED. 1
DevOpsing Your Greenfield:
Cultivating New Growth
Richard Mills
DevOps Solution Lead, Coveros Inc.
rich.mills@coveros.com
@armillz
Š COPYRIGHT 2018 COVEROS, INC. ALL RIGHTS RESERVED. 2
Who is this guy?
• Me: Mad-Software-Developer turned Mad-Software-Engineer
turned DevOps-Solution-Lead. Pragmatist. Particular focus on
tools and automation. CI, CD, DevOps … what’s next?
• PS: Thanks for inventing the term “DevOps” to describe what I like
to do.
• Pays my bills: Coveros helps organizations accelerate the
delivery of secure, reliable software using agile methods.
• Agile transformations, development, and testing
• DevOps implementations
• Training courses in Agile, DevOps, Application Security
• Keeps me intrigued: SecureCI
• Open-source DevOps product
• Integrated CI stack with security flavor
Š COPYRIGHT 2018 COVEROS, INC. ALL RIGHTS RESERVED. 3
Why is he here?
• Open your mind about most important aspects of "new" DevOps
• Share some of my experiences (and failures)
• Give you a reference to walk away with
• NOT: Explain fundamentals of DevOps (or Agile)
• NOT: Sell you on DevOps (or Agile)
Š COPYRIGHT 2018 COVEROS, INC. ALL RIGHTS RESERVED. 4
Somewhere in our DevOps dreams...
I want to do some DevOps and Agile on our
important new project!
Great. How about this? Let’s BE Agile and
adopt a DevOps approach to structuring our
teams, designing our architecture, and
leveraging automation to rapidly deliver value
to our customers?
Right. That’s what I said.
Sigh
Š COPYRIGHT 2018 COVEROS, INC. ALL RIGHTS RESERVED. 5
Typical DevOps Transformation
• Frequently a fire-fighting effort
• Find the most important thing, improve it
• You have something concrete to start
with, so you just start fixing it.
Š COPYRIGHT 2018 COVEROS, INC. ALL RIGHTS RESERVED. 6
Greenfield DevOps
• Wide open options
• No obvious path
• Nothing to grab onto yet, so nothing
to "fix" and no clear direction to
follow
It can seem like an overwhelming
boulder, at times.
Š COPYRIGHT 2018 COVEROS, INC. ALL RIGHTS RESERVED. 7
You have ONE job
• Don't blow it
• You have a clean slate
• Don’t create your own dumpster fire
We want fire proofing, not fire starting.
Š COPYRIGHT 2018 COVEROS, INC. ALL RIGHTS RESERVED. 8
General Agenda
• DevOps baseline – picking the seeds
• Greenfield approach – planting the seeds
• Important aspects for cultivating growth
• Organization structure and mission
• Infrastructure and tools
• Pipeline design with delivery and branching model
• Integrating with your architecture
• Testing and quality analysis
Each of these could be multi-hour topics.
Š COPYRIGHT 2018 COVEROS, INC. ALL RIGHTS RESERVED. 9
DevOps – picking the seeds
Š COPYRIGHT 2018 COVEROS, INC. ALL RIGHTS RESERVED. 10
The Many Things of DevOps
Notice that not many of these are PURELY the responsibility of one person or even team
Š COPYRIGHT 2018 COVEROS, INC. ALL RIGHTS RESERVED. 12
Ok, But What Do We Actually Mean by DevOps?
• DevOps is the natural evolution of Agile: how to get working software into the hands of the
people who need it rapidly and reliably
• Who? Developers, Product Owners, ultimately users
• When? Now!
• Seriously … within weeks we can measure delivery with "minutes"
• How? Team structure, processes, automation, tools
• Extension of Agile
• Focus on value delivery
• Common sense
• Enable developers to be creative and do great work
• Work with developers to integrate system architecture with deployment architecture
• Absolutely makes things easier and work better
• Examples: metrics, testing, health, scaling
Š COPYRIGHT 2018 COVEROS, INC. ALL RIGHTS RESERVED. 16
Greenfield approach – planting the
seeds
Š COPYRIGHT 2018 COVEROS, INC. ALL RIGHTS RESERVED. 17
So ... Where do we actually start?
It’s actually pretty easy:
1. Create a team
2. Set up some infrastructure and tools
3. Build a pipeline
4. Establish quality gates
5. Iterate
Ok, It’s a little harder than that...
Š COPYRIGHT 2018 COVEROS, INC. ALL RIGHTS RESERVED. 18
Most Important: Iterate!
• Don't solve everything at once (breadth first)
• Don't even solve one thing all the way (depth first)
• Get the most important things functional, then improve over time
• Start left, build toward the right. Most important first.
• Don't paint yourself into a corner, but don't over-engineer
• Wait until you know what you need for things that are easy to rework
• Caveat: beware things that are immensely hard to re-work.
• Start with the simplest thing that could work
Remember: DevOps is about delivering value, not just making things cool.
Š COPYRIGHT 2018 COVEROS, INC. ALL RIGHTS RESERVED. 20
Team structure and mission
Š COPYRIGHT 2018 COVEROS, INC. ALL RIGHTS RESERVED. 21
Avoid DevOps Team Anti-Patterns
•Separate silos
•Dev, Ops, DevOps silos
•No Ops
http://web.devopstopologies.com/
Š COPYRIGHT 2018 COVEROS, INC. ALL RIGHTS RESERVED. 22
Successful DevOps Organizational Structures
Build the right relationships between the people with shared
success goals.
• Ideal: Cross functional teams with Dev, Ops & QA
• Shared goals and values
• Collaborative
• Unified processes and tooling
• Maybe: DevOps as a service
• Smaller teams/orgs
• Transitional situations
• Sometimes: Embedded Ops
• Suitable for single web-based product
Š COPYRIGHT 2018 COVEROS, INC. ALL RIGHTS RESERVED. 23
Horizontal DevOps Guild
• Group of DevOps professionals working together to solve cross-team DevOps problems
• Guild members in-team are focused on team-specific problems
• Dedicated guild members support cross-team needs
• Guild establishes cross-team standards and shared success
• Important: share knowledge across team members
Cross-team function (vs. cross-functional team)
Š COPYRIGHT 2018 COVEROS, INC. ALL RIGHTS RESERVED. 24
Example DevOps Guild and Team Structure
Our team organization on a 50-ish person development project
Horizontal Guilds
DevOps Engr
CORE DevOps Lead
Platform Engr
CORE Platform Lead
Platform Engr Security
Security
Security
Performance
Performance
Agile Vertical Team
Scrum master
DevOps Engr
Biz Analyst
Agile Tester
Front End
Full Stack
Agile Vertical Team
Scrum master
DevOps Engr
Biz Analyst
Agile Tester
Front End
Full Stack
Agile Vertical Team
Scrum master
DevOps Engr
Biz Analyst
Agile Tester
Front End
Full Stack
Agile Vertical Team
Scrum master
DevOps Engr
Biz Analyst
Agile Tester
Front End
Full Stack
Š COPYRIGHT 2018 COVEROS, INC. ALL RIGHTS RESERVED. 25
Finding the Right DevOps Members
• A good DevOps person ...
• ... Is a Developer
• ... Is a Tester
• ... Knows about system administration
• ... Has strong attention to detail
• ... Has high standards for quality
• ... Knows how to solve problems
• ... Good at making things work
• Has experience and skills with build tools (maven, gradle, npm), test tools (junit, testNG,
Selenium), database programming (sql, no-sql), CI build servers (Jenkins, Travis), operating
systems (Linux, Windows), software installation/configuration (nginx, tomcat, databases), CM
automation tools (chef, puppet, ansible), scripting (python, groovy, ruby), cloud systems
(AWS, Google, Azure), virtualization and containerization (virtualbox, vmware, docker), and
many, many other buzzwords (REST, HTTP, SSL, API, UI, e2e)
Š COPYRIGHT 2018 COVEROS, INC. ALL RIGHTS RESERVED. 28
Infrastructure and Tools
Š COPYRIGHT 2018 COVEROS, INC. ALL RIGHTS RESERVED. 29
Application Lifecycle Mgmt. SCM/VCS Testing Deployment Cloud/IaaS/PaaS
Communication & ChatOps
Knowledge Sharing
Configuration Mgmt.
Artifact Management
Orchestration & Scheduling
Monitoring & Logging
Database Management
Build
Continuous Integration
Analysis
Tools, tools, and more tools
Š COPYRIGHT 2018 COVEROS, INC. ALL RIGHTS RESERVED. 30
Application Lifecycle Mgmt. SCM/VCS Testing Deployment Cloud/IaaS/PaaS
Communication & ChatOps
Knowledge Sharing
Configuration Mgmt.
Artifact Management
Orchestration & Scheduling
Monitoring & Logging
Database Management
Build
Continuous Integration
Analysis
Let’s start with LESS tools
Š COPYRIGHT 2018 COVEROS, INC. ALL RIGHTS RESERVED. 31
Infrastructure Platforms
• Infrastructure: Operating Platform
• Server platform - physical, VM, container
• OS configuration
• Middleware installation and configuration (java, nginx, tomcat, database, message queue, etc.)
• DevOps Infrastructure: DevOps Platform
• Build server (Jenkins)
• Quality analysis server (SonarQube)
• Artifact server (Nexus)
• Source control server (Git)
• Test server(s)? (Selenium)
• Target environment for CI/CD builds (see: Operating Platform)
• Developer Infrastructure: local development
Š COPYRIGHT 2018 COVEROS, INC. ALL RIGHTS RESERVED. 34
DevOps Platform
• DevOps Platform - the set of tools and
environments you use
• Start with your operating platform, build from
there
• Jenkins - build and pipeline orchestration tool
• SonarQube - quality analysis dashboard
• OpenShift & Docker - deployment and
configuration
• Pick some assessment tools:
• JUnit, Jest
• OWASP Dependency Check
• Selenium
• Again, start manually then move to
automation
Š COPYRIGHT 2018 COVEROS, INC. ALL RIGHTS RESERVED. 35
Example Platform Architecture
• Ideally, your “operating platform” and “DevOps platform” share a lot of underlying
infrastructure
AWS
Instance
Open Shift Cluster
Pod
AWS
Instance
AWS
Instance
Pod Pod Pod Pod
Micro-Service App Code
PodPod
DevOps Tools
Pod
AWS
Instance
Shared
Service
AWS
RDS
Shared DB
Š COPYRIGHT 2018 COVEROS, INC. ALL RIGHTS RESERVED. 36
Align the Developers
• Developer Environments - align with operational platform
• Should be able to fetch code build with very little effort; well documented, highly automated
• Local deploy/test cycle should be similar to operational (e.g., VM, docker, Operating system,
etc.)
• Caveat: support rapid change/build/test cycles supported by modern IDEs
Š COPYRIGHT 2018 COVEROS, INC. ALL RIGHTS RESERVED. 39
Constructing the Delivery Pipeline
Š COPYRIGHT 2018 COVEROS, INC. ALL RIGHTS RESERVED. 41
Pipeline and Tools
Use automation and tools to continuously assess quality, performance, and security in rapid feedback loops
Continuous MonitoringContinuous Integration
BuildCode
Continuous Delivery
commit
DEV
TEST
PROD
Compile
Test
Package
Publish
Unit Test
Integration Test
Code coverage
Code Scanning
Static Analysis
Bugs
Vulnerabilities
Technical Debt
Package
Dependency
checking
Vulnerable
components
Deploy Test
Provision
Install
Configure
Vulnerability Scanning
Deployment verification
Smoke test
Manual Testing
- Exploratory
- UAT
Functional Testing
- Behavioral
- API
- Web UI
Non-Functional Testing
- Load/Performance
- Web Security
Platform
Vulnerabilities
Test Results Defects
Change Requests
Test Promote
Operate
Monitor
Š COPYRIGHT 2018 COVEROS, INC. ALL RIGHTS RESERVED. 43
Branching Strategy
• Strive for "main line" development
• Use short, small feature branches for isolated changes
• Consider Github Flow (very simple), Git Flow (complex)
• Avoid "parallel release development" at all costs
• What problems does branching cause vs. solve?
• Align with your delivery pipeline
Š COPYRIGHT 2018 COVEROS, INC. ALL RIGHTS RESERVED. 45
Integrating with Software Architecture
• Not all software lends itself to easy build, test, and deployment
• Work directly with software architecture and development teams
• Software must support
• Rapid build
• Automated test (controllability, observability)
• Data initialization
• Installation/configuration
• Monitoring/metrics
• Standards and "Definition of Done" should reflect this
• Development stories aren’t complete until all these things work
Š COPYRIGHT 2018 COVEROS, INC. ALL RIGHTS RESERVED. 47
Testing and quality analysis
Š COPYRIGHT 2018 COVEROS, INC. ALL RIGHTS RESERVED. 48
Your efforts in DevOps will fail without
proper automated testing and assessment
that is fully integrated into the pipeline.
Š COPYRIGHT 2018 COVEROS, INC. ALL RIGHTS RESERVED. 49
Goals for Testing in DevOps
• Keep software in continuous working state
• Establish confidence in change
• Force teams to build quality in (and agree it’s important)
• Avoid creating too much technical debt too early
Important: everywhere I say “Quality” I mean “Quality, Security,
Performance, and all the other –ilities” you can think of for your
software.
Š COPYRIGHT 2018 COVEROS, INC. ALL RIGHTS RESERVED. 51
Quality Gates are Critical
Quality gates ensure that bad code cannot make it through the pipeline
• Static analysis - set gates early; avoid tech debt
• Standards: style, bugs, vulnerabilities (standards not as important as following them)
• 3rd party dependency analysis - vulnerabilities, licensing
• Testing phases
• Pre-deployment testing - unit, component, mocking
• Post-deployment functional testing - services,
integration, databases, etc.
• Non-functional testing - security, performance,
reliability, availability
• Code Review
• Tie to branching process (Github pull requests)
• Small feature branches help this
Start left, move right (quickly)
Š COPYRIGHT 2018 COVEROS, INC. ALL RIGHTS RESERVED. 53
Getting Started with DevOps Testing
Create ONE of each test and make sure it gets
executed by the DevOps pipeline continuously
• Cover each test level
• Unit
• UI
• API
• Security
• Once the test framework is in place, it removes the barrier and enables test writing
• Pitfall: initially, your test results will be all over the place. You will realize the need for a
“quality dashboard”
Š COPYRIGHT 2018 COVEROS, INC. ALL RIGHTS RESERVED. 55
Greenfield DevOps: Grow!
Š COPYRIGHT 2018 COVEROS, INC. ALL RIGHTS RESERVED. 56
Start Small, Make It Work
• Launch basic DevOps tools (Jenkins, Sonar, Nexus, Git)
• Setup basic CI builds
• Developers use same gradle/npm build scripts as the pipeline
• Create some quality gates
• SonarQube static analysis
• Unit testing
• Code coverage (maybe)
• Create a test environment (by hand, if need be)
• Initialize deployment automation
• Docker deploy, Ansible installation
• Developers use same (similar) local deployment
All this can be done in days or weeks with the right people
Š COPYRIGHT 2018 COVEROS, INC. ALL RIGHTS RESERVED. 60
Generating Value
Remember, the main goal of DevOps is to deliver working code to the people who need it
• Prioritize what the developers need first
• Get software in front of stakeholders ASAP
Keep it real
• Don’t get hung up on making things perfect at first
• Establish quality gates to avoid (too much) technical debt
Š COPYRIGHT 2018 COVEROS, INC. ALL RIGHTS RESERVED. 61
Questions?
Thank you!
rich.mills@coveros.com
https://www.coveros.com/services/devops/

Weitere ähnliche Inhalte

Was ist angesagt?

Application Deployment at UC Riverside
Application Deployment at UC RiversideApplication Deployment at UC Riverside
Application Deployment at UC RiversideMichael Kennedy
 
ScrumOps - Featuring Dave West & Jayne Groll
ScrumOps - Featuring Dave West & Jayne GrollScrumOps - Featuring Dave West & Jayne Groll
ScrumOps - Featuring Dave West & Jayne GrollTaylor Puleri
 
Devops Intro - Devops for Unicorns & DevOps for Horses
Devops Intro - Devops for Unicorns & DevOps for HorsesDevops Intro - Devops for Unicorns & DevOps for Horses
Devops Intro - Devops for Unicorns & DevOps for HorsesBoonNam Goh
 
MERGE 2016 Opening Remarks
MERGE 2016 Opening RemarksMERGE 2016 Opening Remarks
MERGE 2016 Opening RemarksPerforce
 
Salesforce DevOps: Where Do You Start?
Salesforce DevOps: Where Do You Start?Salesforce DevOps: Where Do You Start?
Salesforce DevOps: Where Do You Start?Chandler Anderson
 
Introduction to DevOps - Rackspace tech night
Introduction to DevOps - Rackspace tech nightIntroduction to DevOps - Rackspace tech night
Introduction to DevOps - Rackspace tech nightMarc Cluet
 
Devops
DevopsDevops
Devopslakmal123
 
DevOps: A Culture Transformation, More than Technology
DevOps: A Culture Transformation, More than TechnologyDevOps: A Culture Transformation, More than Technology
DevOps: A Culture Transformation, More than TechnologyCA Technologies
 
Patterns and Practices of a Successful DevOps Transformation
Patterns and Practices of a Successful DevOps TransformationPatterns and Practices of a Successful DevOps Transformation
Patterns and Practices of a Successful DevOps TransformationChef
 
CI/CD (DevOps) 101
CI/CD (DevOps) 101CI/CD (DevOps) 101
CI/CD (DevOps) 101Hazzim Anaya
 
Application Security Epistemology in a Continuous Delivery World
Application Security Epistemology in a Continuous Delivery WorldApplication Security Epistemology in a Continuous Delivery World
Application Security Epistemology in a Continuous Delivery WorldJames Wickett
 
DevOps introduction
DevOps introductionDevOps introduction
DevOps introductionMettje Heegstra
 
Enterprise-Grade DevOps Solutions for a Start Up Budget
Enterprise-Grade DevOps Solutions for a Start Up BudgetEnterprise-Grade DevOps Solutions for a Start Up Budget
Enterprise-Grade DevOps Solutions for a Start Up BudgetDevOps.com
 
Achieving DevOps using Open Source Tools in the Enterprise
Achieving DevOps using Open Source Tools in the EnterpriseAchieving DevOps using Open Source Tools in the Enterprise
Achieving DevOps using Open Source Tools in the EnterpriseCollabNet
 
5 Keys to Building a Successful DevOps Culture
5 Keys to Building a Successful DevOps Culture5 Keys to Building a Successful DevOps Culture
5 Keys to Building a Successful DevOps CultureMandi Walls
 

Was ist angesagt? (20)

Application Deployment at UC Riverside
Application Deployment at UC RiversideApplication Deployment at UC Riverside
Application Deployment at UC Riverside
 
ScrumOps - Featuring Dave West & Jayne Groll
ScrumOps - Featuring Dave West & Jayne GrollScrumOps - Featuring Dave West & Jayne Groll
ScrumOps - Featuring Dave West & Jayne Groll
 
Why to docker
Why to dockerWhy to docker
Why to docker
 
Devops Intro - Devops for Unicorns & DevOps for Horses
Devops Intro - Devops for Unicorns & DevOps for HorsesDevops Intro - Devops for Unicorns & DevOps for Horses
Devops Intro - Devops for Unicorns & DevOps for Horses
 
MERGE 2016 Opening Remarks
MERGE 2016 Opening RemarksMERGE 2016 Opening Remarks
MERGE 2016 Opening Remarks
 
Salesforce DevOps: Where Do You Start?
Salesforce DevOps: Where Do You Start?Salesforce DevOps: Where Do You Start?
Salesforce DevOps: Where Do You Start?
 
Introduction to DevOps - Rackspace tech night
Introduction to DevOps - Rackspace tech nightIntroduction to DevOps - Rackspace tech night
Introduction to DevOps - Rackspace tech night
 
Devops
DevopsDevops
Devops
 
DevOps: A Culture Transformation, More than Technology
DevOps: A Culture Transformation, More than TechnologyDevOps: A Culture Transformation, More than Technology
DevOps: A Culture Transformation, More than Technology
 
Patterns and Practices of a Successful DevOps Transformation
Patterns and Practices of a Successful DevOps TransformationPatterns and Practices of a Successful DevOps Transformation
Patterns and Practices of a Successful DevOps Transformation
 
DevOps 101
DevOps 101DevOps 101
DevOps 101
 
CI/CD (DevOps) 101
CI/CD (DevOps) 101CI/CD (DevOps) 101
CI/CD (DevOps) 101
 
SUCCEEDING WITH DEVOPS DEVOPS
SUCCEEDING WITH DEVOPS DEVOPSSUCCEEDING WITH DEVOPS DEVOPS
SUCCEEDING WITH DEVOPS DEVOPS
 
Devops ppt
Devops pptDevops ppt
Devops ppt
 
Application Security Epistemology in a Continuous Delivery World
Application Security Epistemology in a Continuous Delivery WorldApplication Security Epistemology in a Continuous Delivery World
Application Security Epistemology in a Continuous Delivery World
 
Devops skills you got what it takes ?
Devops skills   you got what it takes ?Devops skills   you got what it takes ?
Devops skills you got what it takes ?
 
DevOps introduction
DevOps introductionDevOps introduction
DevOps introduction
 
Enterprise-Grade DevOps Solutions for a Start Up Budget
Enterprise-Grade DevOps Solutions for a Start Up BudgetEnterprise-Grade DevOps Solutions for a Start Up Budget
Enterprise-Grade DevOps Solutions for a Start Up Budget
 
Achieving DevOps using Open Source Tools in the Enterprise
Achieving DevOps using Open Source Tools in the EnterpriseAchieving DevOps using Open Source Tools in the Enterprise
Achieving DevOps using Open Source Tools in the Enterprise
 
5 Keys to Building a Successful DevOps Culture
5 Keys to Building a Successful DevOps Culture5 Keys to Building a Successful DevOps Culture
5 Keys to Building a Successful DevOps Culture
 

Ähnlich wie DevOpsing Greenfield - AgileDC2018 - Mills - v1.4 2018.10.15

What is DevOps | DevOps Introduction | DevOps Training | DevOps Tutorial | Ed...
What is DevOps | DevOps Introduction | DevOps Training | DevOps Tutorial | Ed...What is DevOps | DevOps Introduction | DevOps Training | DevOps Tutorial | Ed...
What is DevOps | DevOps Introduction | DevOps Training | DevOps Tutorial | Ed...Edureka!
 
SD DevOps Meet-up - Exploring Quadrants of DevOps Maturity
SD DevOps Meet-up - Exploring Quadrants of DevOps MaturitySD DevOps Meet-up - Exploring Quadrants of DevOps Maturity
SD DevOps Meet-up - Exploring Quadrants of DevOps MaturityBrian Dawson
 
How to choose Enterprise tools to build out your Continuous Delivery toolscape
How to choose Enterprise tools to build out your Continuous Delivery toolscapeHow to choose Enterprise tools to build out your Continuous Delivery toolscape
How to choose Enterprise tools to build out your Continuous Delivery toolscapeXebiaLabs
 
Experiences Bringing CD to a DoD Project
Experiences Bringing CD to a DoD ProjectExperiences Bringing CD to a DoD Project
Experiences Bringing CD to a DoD ProjectGene Gotimer
 
(SPOT205) 5 Lessons for Managing Massive IT Transformation Projects
(SPOT205) 5 Lessons for Managing Massive IT Transformation Projects(SPOT205) 5 Lessons for Managing Massive IT Transformation Projects
(SPOT205) 5 Lessons for Managing Massive IT Transformation ProjectsAmazon Web Services
 
Cloud Native Transformation (Alexis Richardson) - Continuous Lifecycle 2018 ...
 Cloud Native Transformation (Alexis Richardson) - Continuous Lifecycle 2018 ... Cloud Native Transformation (Alexis Richardson) - Continuous Lifecycle 2018 ...
Cloud Native Transformation (Alexis Richardson) - Continuous Lifecycle 2018 ...Weaveworks
 
10.15.2014 dallas ws_brian_d_dn_live workshop enterpise agility_cust
10.15.2014 dallas ws_brian_d_dn_live workshop enterpise agility_cust10.15.2014 dallas ws_brian_d_dn_live workshop enterpise agility_cust
10.15.2014 dallas ws_brian_d_dn_live workshop enterpise agility_custdennisn129
 
What is DevOps?
What is DevOps?What is DevOps?
What is DevOps?jeckels
 
Measure and Accelerate Your Software Delivery
Measure and Accelerate Your Software DeliveryMeasure and Accelerate Your Software Delivery
Measure and Accelerate Your Software DeliveryAnand Chauhan
 
Mastering DevOps With Oracle
Mastering DevOps With OracleMastering DevOps With Oracle
Mastering DevOps With OracleKelly Goetsch
 
Easing Cloud Migrations with Software Pipelines as a Service - Christopher J...
 Easing Cloud Migrations with Software Pipelines as a Service - Christopher J... Easing Cloud Migrations with Software Pipelines as a Service - Christopher J...
Easing Cloud Migrations with Software Pipelines as a Service - Christopher J...AWS Chicago
 
DevOps - IaC | Talk | AGILE GURUGRAM 2018 | 23 - 24 March, 2018
DevOps - IaC | Talk | AGILE GURUGRAM 2018 | 23 - 24 March, 2018DevOps - IaC | Talk | AGILE GURUGRAM 2018 | 23 - 24 March, 2018
DevOps - IaC | Talk | AGILE GURUGRAM 2018 | 23 - 24 March, 2018AgileNetwork
 
DOES16 London - Jonathan Fletcher - Re-imagining Hiscox IT: A DevOps Story
DOES16 London - Jonathan Fletcher - Re-imagining Hiscox IT: A DevOps StoryDOES16 London - Jonathan Fletcher - Re-imagining Hiscox IT: A DevOps Story
DOES16 London - Jonathan Fletcher - Re-imagining Hiscox IT: A DevOps StoryGene Kim
 
A Reference Architecture to Enable Visibility and Traceability across the Ent...
A Reference Architecture to Enable Visibility and Traceability across the Ent...A Reference Architecture to Enable Visibility and Traceability across the Ent...
A Reference Architecture to Enable Visibility and Traceability across the Ent...CollabNet
 
Comprehensive Guide to Hire DevOps Engineer.pdf
Comprehensive Guide to Hire DevOps Engineer.pdfComprehensive Guide to Hire DevOps Engineer.pdf
Comprehensive Guide to Hire DevOps Engineer.pdfEcosmobTechnologies1
 
Software architecture in a DevOps world
Software architecture in a DevOps worldSoftware architecture in a DevOps world
Software architecture in a DevOps worldBert Jan Schrijver
 
Choosing Automation for DevOps & Continuous Delivery in the Enterprise
Choosing Automation for DevOps & Continuous Delivery in the EnterpriseChoosing Automation for DevOps & Continuous Delivery in the Enterprise
Choosing Automation for DevOps & Continuous Delivery in the EnterpriseXebiaLabs
 
Untangling DevOps - A high-level overview and how we got here
Untangling DevOps -  A high-level overview and how we got hereUntangling DevOps -  A high-level overview and how we got here
Untangling DevOps - A high-level overview and how we got hereBarton George
 
Linking Upstream and Downstream Agile
Linking Upstream and Downstream AgileLinking Upstream and Downstream Agile
Linking Upstream and Downstream AgileCollabNet
 

Ähnlich wie DevOpsing Greenfield - AgileDC2018 - Mills - v1.4 2018.10.15 (20)

What is DevOps | DevOps Introduction | DevOps Training | DevOps Tutorial | Ed...
What is DevOps | DevOps Introduction | DevOps Training | DevOps Tutorial | Ed...What is DevOps | DevOps Introduction | DevOps Training | DevOps Tutorial | Ed...
What is DevOps | DevOps Introduction | DevOps Training | DevOps Tutorial | Ed...
 
SD DevOps Meet-up - Exploring Quadrants of DevOps Maturity
SD DevOps Meet-up - Exploring Quadrants of DevOps MaturitySD DevOps Meet-up - Exploring Quadrants of DevOps Maturity
SD DevOps Meet-up - Exploring Quadrants of DevOps Maturity
 
How to choose Enterprise tools to build out your Continuous Delivery toolscape
How to choose Enterprise tools to build out your Continuous Delivery toolscapeHow to choose Enterprise tools to build out your Continuous Delivery toolscape
How to choose Enterprise tools to build out your Continuous Delivery toolscape
 
Experiences Bringing CD to a DoD Project
Experiences Bringing CD to a DoD ProjectExperiences Bringing CD to a DoD Project
Experiences Bringing CD to a DoD Project
 
(SPOT205) 5 Lessons for Managing Massive IT Transformation Projects
(SPOT205) 5 Lessons for Managing Massive IT Transformation Projects(SPOT205) 5 Lessons for Managing Massive IT Transformation Projects
(SPOT205) 5 Lessons for Managing Massive IT Transformation Projects
 
Cloud Native Transformation (Alexis Richardson) - Continuous Lifecycle 2018 ...
 Cloud Native Transformation (Alexis Richardson) - Continuous Lifecycle 2018 ... Cloud Native Transformation (Alexis Richardson) - Continuous Lifecycle 2018 ...
Cloud Native Transformation (Alexis Richardson) - Continuous Lifecycle 2018 ...
 
10.15.2014 dallas ws_brian_d_dn_live workshop enterpise agility_cust
10.15.2014 dallas ws_brian_d_dn_live workshop enterpise agility_cust10.15.2014 dallas ws_brian_d_dn_live workshop enterpise agility_cust
10.15.2014 dallas ws_brian_d_dn_live workshop enterpise agility_cust
 
What is DevOps?
What is DevOps?What is DevOps?
What is DevOps?
 
Measure and Accelerate Your Software Delivery
Measure and Accelerate Your Software DeliveryMeasure and Accelerate Your Software Delivery
Measure and Accelerate Your Software Delivery
 
Mastering DevOps With Oracle
Mastering DevOps With OracleMastering DevOps With Oracle
Mastering DevOps With Oracle
 
Easing Cloud Migrations with Software Pipelines as a Service - Christopher J...
 Easing Cloud Migrations with Software Pipelines as a Service - Christopher J... Easing Cloud Migrations with Software Pipelines as a Service - Christopher J...
Easing Cloud Migrations with Software Pipelines as a Service - Christopher J...
 
DevOps - IaC | Talk | AGILE GURUGRAM 2018 | 23 - 24 March, 2018
DevOps - IaC | Talk | AGILE GURUGRAM 2018 | 23 - 24 March, 2018DevOps - IaC | Talk | AGILE GURUGRAM 2018 | 23 - 24 March, 2018
DevOps - IaC | Talk | AGILE GURUGRAM 2018 | 23 - 24 March, 2018
 
DOES16 London - Jonathan Fletcher - Re-imagining Hiscox IT: A DevOps Story
DOES16 London - Jonathan Fletcher - Re-imagining Hiscox IT: A DevOps StoryDOES16 London - Jonathan Fletcher - Re-imagining Hiscox IT: A DevOps Story
DOES16 London - Jonathan Fletcher - Re-imagining Hiscox IT: A DevOps Story
 
A Reference Architecture to Enable Visibility and Traceability across the Ent...
A Reference Architecture to Enable Visibility and Traceability across the Ent...A Reference Architecture to Enable Visibility and Traceability across the Ent...
A Reference Architecture to Enable Visibility and Traceability across the Ent...
 
Comprehensive Guide to Hire DevOps Engineer.pdf
Comprehensive Guide to Hire DevOps Engineer.pdfComprehensive Guide to Hire DevOps Engineer.pdf
Comprehensive Guide to Hire DevOps Engineer.pdf
 
Software architecture in a DevOps world
Software architecture in a DevOps worldSoftware architecture in a DevOps world
Software architecture in a DevOps world
 
Choosing Automation for DevOps & Continuous Delivery in the Enterprise
Choosing Automation for DevOps & Continuous Delivery in the EnterpriseChoosing Automation for DevOps & Continuous Delivery in the Enterprise
Choosing Automation for DevOps & Continuous Delivery in the Enterprise
 
Untangling DevOps - A high-level overview and how we got here
Untangling DevOps -  A high-level overview and how we got hereUntangling DevOps -  A high-level overview and how we got here
Untangling DevOps - A high-level overview and how we got here
 
Enabling Agility Through DevOps
Enabling Agility Through DevOpsEnabling Agility Through DevOps
Enabling Agility Through DevOps
 
Linking Upstream and Downstream Agile
Linking Upstream and Downstream AgileLinking Upstream and Downstream Agile
Linking Upstream and Downstream Agile
 

KĂźrzlich hochgeladen

Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Bhuvaneswari Subramani
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesrafiqahmad00786416
 
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
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...apidays
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDropbox
 
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
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Jeffrey Haguewood
 
Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..Christopher Logan Kennedy
 
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
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusZilliz
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingEdi Saputra
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MIND CTI
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityWSO2
 
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
 
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
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Orbitshub
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Victor Rentea
 
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
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxRemote DBA Services
 

KĂźrzlich hochgeladen (20)

Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
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
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
 
+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...
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
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
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..
 
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
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital Adaptability
 
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...
 
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
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptx
 

DevOpsing Greenfield - AgileDC2018 - Mills - v1.4 2018.10.15

  • 1. Š COPYRIGHT 2018 COVEROS, INC. ALL RIGHTS RESERVED. 1 DevOpsing Your Greenfield: Cultivating New Growth Richard Mills DevOps Solution Lead, Coveros Inc. rich.mills@coveros.com @armillz
  • 2. Š COPYRIGHT 2018 COVEROS, INC. ALL RIGHTS RESERVED. 2 Who is this guy? • Me: Mad-Software-Developer turned Mad-Software-Engineer turned DevOps-Solution-Lead. Pragmatist. Particular focus on tools and automation. CI, CD, DevOps … what’s next? • PS: Thanks for inventing the term “DevOps” to describe what I like to do. • Pays my bills: Coveros helps organizations accelerate the delivery of secure, reliable software using agile methods. • Agile transformations, development, and testing • DevOps implementations • Training courses in Agile, DevOps, Application Security • Keeps me intrigued: SecureCI • Open-source DevOps product • Integrated CI stack with security flavor
  • 3. Š COPYRIGHT 2018 COVEROS, INC. ALL RIGHTS RESERVED. 3 Why is he here? • Open your mind about most important aspects of "new" DevOps • Share some of my experiences (and failures) • Give you a reference to walk away with • NOT: Explain fundamentals of DevOps (or Agile) • NOT: Sell you on DevOps (or Agile)
  • 4. Š COPYRIGHT 2018 COVEROS, INC. ALL RIGHTS RESERVED. 4 Somewhere in our DevOps dreams... I want to do some DevOps and Agile on our important new project! Great. How about this? Let’s BE Agile and adopt a DevOps approach to structuring our teams, designing our architecture, and leveraging automation to rapidly deliver value to our customers? Right. That’s what I said. Sigh
  • 5. Š COPYRIGHT 2018 COVEROS, INC. ALL RIGHTS RESERVED. 5 Typical DevOps Transformation • Frequently a fire-fighting effort • Find the most important thing, improve it • You have something concrete to start with, so you just start fixing it.
  • 6. Š COPYRIGHT 2018 COVEROS, INC. ALL RIGHTS RESERVED. 6 Greenfield DevOps • Wide open options • No obvious path • Nothing to grab onto yet, so nothing to "fix" and no clear direction to follow It can seem like an overwhelming boulder, at times.
  • 7. Š COPYRIGHT 2018 COVEROS, INC. ALL RIGHTS RESERVED. 7 You have ONE job • Don't blow it • You have a clean slate • Don’t create your own dumpster fire We want fire proofing, not fire starting.
  • 8. Š COPYRIGHT 2018 COVEROS, INC. ALL RIGHTS RESERVED. 8 General Agenda • DevOps baseline – picking the seeds • Greenfield approach – planting the seeds • Important aspects for cultivating growth • Organization structure and mission • Infrastructure and tools • Pipeline design with delivery and branching model • Integrating with your architecture • Testing and quality analysis Each of these could be multi-hour topics.
  • 9. Š COPYRIGHT 2018 COVEROS, INC. ALL RIGHTS RESERVED. 9 DevOps – picking the seeds
  • 10. Š COPYRIGHT 2018 COVEROS, INC. ALL RIGHTS RESERVED. 10 The Many Things of DevOps Notice that not many of these are PURELY the responsibility of one person or even team
  • 11. Š COPYRIGHT 2018 COVEROS, INC. ALL RIGHTS RESERVED. 12 Ok, But What Do We Actually Mean by DevOps? • DevOps is the natural evolution of Agile: how to get working software into the hands of the people who need it rapidly and reliably • Who? Developers, Product Owners, ultimately users • When? Now! • Seriously … within weeks we can measure delivery with "minutes" • How? Team structure, processes, automation, tools • Extension of Agile • Focus on value delivery • Common sense • Enable developers to be creative and do great work • Work with developers to integrate system architecture with deployment architecture • Absolutely makes things easier and work better • Examples: metrics, testing, health, scaling
  • 12. Š COPYRIGHT 2018 COVEROS, INC. ALL RIGHTS RESERVED. 16 Greenfield approach – planting the seeds
  • 13. Š COPYRIGHT 2018 COVEROS, INC. ALL RIGHTS RESERVED. 17 So ... Where do we actually start? It’s actually pretty easy: 1. Create a team 2. Set up some infrastructure and tools 3. Build a pipeline 4. Establish quality gates 5. Iterate Ok, It’s a little harder than that...
  • 14. Š COPYRIGHT 2018 COVEROS, INC. ALL RIGHTS RESERVED. 18 Most Important: Iterate! • Don't solve everything at once (breadth first) • Don't even solve one thing all the way (depth first) • Get the most important things functional, then improve over time • Start left, build toward the right. Most important first. • Don't paint yourself into a corner, but don't over-engineer • Wait until you know what you need for things that are easy to rework • Caveat: beware things that are immensely hard to re-work. • Start with the simplest thing that could work Remember: DevOps is about delivering value, not just making things cool.
  • 15. Š COPYRIGHT 2018 COVEROS, INC. ALL RIGHTS RESERVED. 20 Team structure and mission
  • 16. Š COPYRIGHT 2018 COVEROS, INC. ALL RIGHTS RESERVED. 21 Avoid DevOps Team Anti-Patterns •Separate silos •Dev, Ops, DevOps silos •No Ops http://web.devopstopologies.com/
  • 17. Š COPYRIGHT 2018 COVEROS, INC. ALL RIGHTS RESERVED. 22 Successful DevOps Organizational Structures Build the right relationships between the people with shared success goals. • Ideal: Cross functional teams with Dev, Ops & QA • Shared goals and values • Collaborative • Unified processes and tooling • Maybe: DevOps as a service • Smaller teams/orgs • Transitional situations • Sometimes: Embedded Ops • Suitable for single web-based product
  • 18. Š COPYRIGHT 2018 COVEROS, INC. ALL RIGHTS RESERVED. 23 Horizontal DevOps Guild • Group of DevOps professionals working together to solve cross-team DevOps problems • Guild members in-team are focused on team-specific problems • Dedicated guild members support cross-team needs • Guild establishes cross-team standards and shared success • Important: share knowledge across team members Cross-team function (vs. cross-functional team)
  • 19. Š COPYRIGHT 2018 COVEROS, INC. ALL RIGHTS RESERVED. 24 Example DevOps Guild and Team Structure Our team organization on a 50-ish person development project Horizontal Guilds DevOps Engr CORE DevOps Lead Platform Engr CORE Platform Lead Platform Engr Security Security Security Performance Performance Agile Vertical Team Scrum master DevOps Engr Biz Analyst Agile Tester Front End Full Stack Agile Vertical Team Scrum master DevOps Engr Biz Analyst Agile Tester Front End Full Stack Agile Vertical Team Scrum master DevOps Engr Biz Analyst Agile Tester Front End Full Stack Agile Vertical Team Scrum master DevOps Engr Biz Analyst Agile Tester Front End Full Stack
  • 20. Š COPYRIGHT 2018 COVEROS, INC. ALL RIGHTS RESERVED. 25 Finding the Right DevOps Members • A good DevOps person ... • ... Is a Developer • ... Is a Tester • ... Knows about system administration • ... Has strong attention to detail • ... Has high standards for quality • ... Knows how to solve problems • ... Good at making things work • Has experience and skills with build tools (maven, gradle, npm), test tools (junit, testNG, Selenium), database programming (sql, no-sql), CI build servers (Jenkins, Travis), operating systems (Linux, Windows), software installation/configuration (nginx, tomcat, databases), CM automation tools (chef, puppet, ansible), scripting (python, groovy, ruby), cloud systems (AWS, Google, Azure), virtualization and containerization (virtualbox, vmware, docker), and many, many other buzzwords (REST, HTTP, SSL, API, UI, e2e)
  • 21. Š COPYRIGHT 2018 COVEROS, INC. ALL RIGHTS RESERVED. 28 Infrastructure and Tools
  • 22. Š COPYRIGHT 2018 COVEROS, INC. ALL RIGHTS RESERVED. 29 Application Lifecycle Mgmt. SCM/VCS Testing Deployment Cloud/IaaS/PaaS Communication & ChatOps Knowledge Sharing Configuration Mgmt. Artifact Management Orchestration & Scheduling Monitoring & Logging Database Management Build Continuous Integration Analysis Tools, tools, and more tools
  • 23. Š COPYRIGHT 2018 COVEROS, INC. ALL RIGHTS RESERVED. 30 Application Lifecycle Mgmt. SCM/VCS Testing Deployment Cloud/IaaS/PaaS Communication & ChatOps Knowledge Sharing Configuration Mgmt. Artifact Management Orchestration & Scheduling Monitoring & Logging Database Management Build Continuous Integration Analysis Let’s start with LESS tools
  • 24. Š COPYRIGHT 2018 COVEROS, INC. ALL RIGHTS RESERVED. 31 Infrastructure Platforms • Infrastructure: Operating Platform • Server platform - physical, VM, container • OS configuration • Middleware installation and configuration (java, nginx, tomcat, database, message queue, etc.) • DevOps Infrastructure: DevOps Platform • Build server (Jenkins) • Quality analysis server (SonarQube) • Artifact server (Nexus) • Source control server (Git) • Test server(s)? (Selenium) • Target environment for CI/CD builds (see: Operating Platform) • Developer Infrastructure: local development
  • 25. Š COPYRIGHT 2018 COVEROS, INC. ALL RIGHTS RESERVED. 34 DevOps Platform • DevOps Platform - the set of tools and environments you use • Start with your operating platform, build from there • Jenkins - build and pipeline orchestration tool • SonarQube - quality analysis dashboard • OpenShift & Docker - deployment and configuration • Pick some assessment tools: • JUnit, Jest • OWASP Dependency Check • Selenium • Again, start manually then move to automation
  • 26. Š COPYRIGHT 2018 COVEROS, INC. ALL RIGHTS RESERVED. 35 Example Platform Architecture • Ideally, your “operating platform” and “DevOps platform” share a lot of underlying infrastructure AWS Instance Open Shift Cluster Pod AWS Instance AWS Instance Pod Pod Pod Pod Micro-Service App Code PodPod DevOps Tools Pod AWS Instance Shared Service AWS RDS Shared DB
  • 27. Š COPYRIGHT 2018 COVEROS, INC. ALL RIGHTS RESERVED. 36 Align the Developers • Developer Environments - align with operational platform • Should be able to fetch code build with very little effort; well documented, highly automated • Local deploy/test cycle should be similar to operational (e.g., VM, docker, Operating system, etc.) • Caveat: support rapid change/build/test cycles supported by modern IDEs
  • 28. Š COPYRIGHT 2018 COVEROS, INC. ALL RIGHTS RESERVED. 39 Constructing the Delivery Pipeline
  • 29. Š COPYRIGHT 2018 COVEROS, INC. ALL RIGHTS RESERVED. 41 Pipeline and Tools Use automation and tools to continuously assess quality, performance, and security in rapid feedback loops Continuous MonitoringContinuous Integration BuildCode Continuous Delivery commit DEV TEST PROD Compile Test Package Publish Unit Test Integration Test Code coverage Code Scanning Static Analysis Bugs Vulnerabilities Technical Debt Package Dependency checking Vulnerable components Deploy Test Provision Install Configure Vulnerability Scanning Deployment verification Smoke test Manual Testing - Exploratory - UAT Functional Testing - Behavioral - API - Web UI Non-Functional Testing - Load/Performance - Web Security Platform Vulnerabilities Test Results Defects Change Requests Test Promote Operate Monitor
  • 30. Š COPYRIGHT 2018 COVEROS, INC. ALL RIGHTS RESERVED. 43 Branching Strategy • Strive for "main line" development • Use short, small feature branches for isolated changes • Consider Github Flow (very simple), Git Flow (complex) • Avoid "parallel release development" at all costs • What problems does branching cause vs. solve? • Align with your delivery pipeline
  • 31. Š COPYRIGHT 2018 COVEROS, INC. ALL RIGHTS RESERVED. 45 Integrating with Software Architecture • Not all software lends itself to easy build, test, and deployment • Work directly with software architecture and development teams • Software must support • Rapid build • Automated test (controllability, observability) • Data initialization • Installation/configuration • Monitoring/metrics • Standards and "Definition of Done" should reflect this • Development stories aren’t complete until all these things work
  • 32. Š COPYRIGHT 2018 COVEROS, INC. ALL RIGHTS RESERVED. 47 Testing and quality analysis
  • 33. Š COPYRIGHT 2018 COVEROS, INC. ALL RIGHTS RESERVED. 48 Your efforts in DevOps will fail without proper automated testing and assessment that is fully integrated into the pipeline.
  • 34. Š COPYRIGHT 2018 COVEROS, INC. ALL RIGHTS RESERVED. 49 Goals for Testing in DevOps • Keep software in continuous working state • Establish confidence in change • Force teams to build quality in (and agree it’s important) • Avoid creating too much technical debt too early Important: everywhere I say “Quality” I mean “Quality, Security, Performance, and all the other –ilities” you can think of for your software.
  • 35. Š COPYRIGHT 2018 COVEROS, INC. ALL RIGHTS RESERVED. 51 Quality Gates are Critical Quality gates ensure that bad code cannot make it through the pipeline • Static analysis - set gates early; avoid tech debt • Standards: style, bugs, vulnerabilities (standards not as important as following them) • 3rd party dependency analysis - vulnerabilities, licensing • Testing phases • Pre-deployment testing - unit, component, mocking • Post-deployment functional testing - services, integration, databases, etc. • Non-functional testing - security, performance, reliability, availability • Code Review • Tie to branching process (Github pull requests) • Small feature branches help this Start left, move right (quickly)
  • 36. Š COPYRIGHT 2018 COVEROS, INC. ALL RIGHTS RESERVED. 53 Getting Started with DevOps Testing Create ONE of each test and make sure it gets executed by the DevOps pipeline continuously • Cover each test level • Unit • UI • API • Security • Once the test framework is in place, it removes the barrier and enables test writing • Pitfall: initially, your test results will be all over the place. You will realize the need for a “quality dashboard”
  • 37. Š COPYRIGHT 2018 COVEROS, INC. ALL RIGHTS RESERVED. 55 Greenfield DevOps: Grow!
  • 38. Š COPYRIGHT 2018 COVEROS, INC. ALL RIGHTS RESERVED. 56 Start Small, Make It Work • Launch basic DevOps tools (Jenkins, Sonar, Nexus, Git) • Setup basic CI builds • Developers use same gradle/npm build scripts as the pipeline • Create some quality gates • SonarQube static analysis • Unit testing • Code coverage (maybe) • Create a test environment (by hand, if need be) • Initialize deployment automation • Docker deploy, Ansible installation • Developers use same (similar) local deployment All this can be done in days or weeks with the right people
  • 39. Š COPYRIGHT 2018 COVEROS, INC. ALL RIGHTS RESERVED. 60 Generating Value Remember, the main goal of DevOps is to deliver working code to the people who need it • Prioritize what the developers need first • Get software in front of stakeholders ASAP Keep it real • Don’t get hung up on making things perfect at first • Establish quality gates to avoid (too much) technical debt
  • 40. Š COPYRIGHT 2018 COVEROS, INC. ALL RIGHTS RESERVED. 61 Questions? Thank you! rich.mills@coveros.com https://www.coveros.com/services/devops/