DevOps

Develop faster with DevOps DevOps embraces a culture of unifying the creation and distribution of technology in a way that allows for faster release cycles and more resource-efficient product updating. DevOps For Dummies provides a guidebook for those on the development or operations side in need of...

Descripción completa

Detalles Bibliográficos
Otros Autores: Forsgren, Nicole, writer of foreword (writer of foreword)
Formato: Libro electrónico
Idioma:Inglés
Publicado: Hoboken, N.J.: John Wiley & Sons c2019.
Hoboken, New Jersey : 2019.
Edición:1st edition
Colección:For dummies
Materias:
Ver en Biblioteca Universitat Ramon Llull:https://discovery.url.edu/permalink/34CSUC_URL/1im36ta/alma991009631047206719
Tabla de Contenidos:
  • Intro
  • Title Page
  • Copyright Page
  • Table of Contents
  • Foreword
  • Introduction
  • About This Book
  • Foolish Assumptions
  • Icons Used in This Book
  • Beyond the Book
  • Where to Go from Here
  • Part 1 Demystifying DevOps
  • Chapter 1 Introducing DevOps
  • What Is DevOps?
  • DevOps evolved from Agile
  • DevOps focuses on people
  • Company culture is the foundation of DevOps
  • You learn by observing your process and collecting data
  • Persuasion is key to DevOps adoption
  • Small, incremental changes are priceless
  • Benefitting from DevOps
  • Keeping CALMS
  • Solving the problem of conflicting interests
  • Chapter 2 Designing Your Organization
  • Assessing Your Culture's Health
  • Integrating DevOps
  • Establishing DevOps Values
  • Encourage teamwork
  • Reduce silos
  • Practice systems thinking
  • Embrace failure
  • Communicate, communicate, communicate
  • Accept feedback
  • Automate processes (when appropriate)
  • Modeling Company Culture
  • Avoiding the worst of tech culture
  • Crafting your vision
  • Incentivizing Your Values
  • Evaluations
  • Rewards
  • Chapter 3 Identifying Waste
  • Digging into the Seven Types of Waste
  • Unnecessary process
  • Waiting
  • Motion
  • Costs of defects
  • Overproduction
  • Transportation
  • Inventory
  • Understanding waste in DevOps
  • Rooting Out Waste
  • Discovering bottlenecks
  • Focusing on impact
  • Chapter 4 Persuading Colleagues to Try DevOps
  • Fearing Change
  • Persuading Those around You to Shift to DevOps
  • Earning executive support
  • Creating a groundswell in the engineering group
  • Managing the middle managers
  • Persuading the stubborn
  • Understanding the Adoption Curve
  • Pushing for change
  • Responding to pushback
  • Navigating the chasm
  • Asking "Why?"
  • Chapter 5 Measuring Your Organization
  • Measuring Your Progress
  • Quantifying DevOps
  • Collecting the data.
  • Developing internal case studies
  • Part 2 Establishing a Pipeline
  • Chapter 6 Embracing the New Development Life Cycle
  • Inviting Everyone to the Table
  • Changing Processes: From a Line to a Circuit
  • Shifting Ops "Left": Thinking about Infrastructure
  • Shifting deployments left, too
  • Mimicking production through staging
  • Chapter 7 Planning Ahead
  • Moving beyond the Agile Model
  • Forecasting Challenges
  • Identifying project challenges and constraints
  • Gathering Requirements
  • Designing an MVP
  • Discovering the problem for your MVP to solve
  • Identifying your customer
  • Scrutinizing the competition
  • Prioritizing features
  • Designing the user experience
  • Testing your hypothesis
  • To beta or not to beta?
  • Determining Your Customer by Designing a Persona
  • What is a persona?
  • Designing a persona
  • Chapter 8 Designing Features from a DevOps Perspective
  • Constructing Your Design
  • Designing for DevOps
  • Designing software for change
  • Improving software constantly
  • Documenting your software
  • Architecting Code for the Six Capabilities of DevOps
  • Maintainability
  • Scalability
  • Security
  • Usability
  • Reliability
  • Flexibility
  • Documenting Design Decisions
  • Avoiding Architecture Pitfalls
  • Chapter 9 Developing Code
  • Communicating about Code
  • Engineering for Error
  • Writing Maintainable Code
  • Testing code
  • Debugging code
  • Logging code
  • Writing immutable code
  • Creating readable code
  • Programming Patterns
  • Object-oriented programming
  • Functional programming
  • Choosing a Language
  • Avoiding Anti-Patterns
  • DevOpsing Development
  • Writing clean code
  • Understanding the business
  • Listening to others
  • Focusing on the right things
  • Getting comfortable with being uncomfortable
  • Establishing Good Practices
  • Organizing your source code
  • Writing tests
  • Documenting features.
  • Having peers review your code
  • Chapter 10 Automating Tests Prior to Release
  • Testing Isn't Optional
  • Automating Your Testing
  • Testing in Different Environments
  • Local environment
  • Development environment
  • Testing environment
  • Staging environment
  • Production environment
  • Going beyond the Unit Test
  • Unit tests: It's alive!
  • Integration tests: Do all the pieces work together?
  • Regression tests: After changes, does the code behave the same?
  • Visual tests: Does everything look the same?
  • Performance testing
  • Continuous Testing
  • Chapter 11 Deploying a Product
  • Releasing Code
  • Integrating and Delivering Continuously
  • Benefitting from CI/CD
  • Implementing CI/CD
  • Managing Deployments
  • Automating the right way
  • Versioning
  • Mitigating Failure
  • Rolling back
  • Fixing forward
  • Democratizing Deployments
  • Choosing a Deployment Style
  • Blue-green: Not just for lakes
  • Schrodinger's canary: The deploy's not dead (or is it?)
  • Rolling the dice
  • Toggling with feature flags
  • Monitoring Your Systems
  • Understanding telemetry
  • Recording behavior
  • SLAs, SLIs, and SLOs
  • Part 3 Connecting the Circuit
  • Chapter 12 Implementing Rapid Iteration
  • Prioritizing the Important
  • Important and urgent
  • Important, not urgent
  • Urgent, not important
  • Neither important nor urgent
  • Increasing Velocity
  • Improving Performance
  • Eliminating perfection
  • Designing small teams
  • Tracking your work
  • Reducing friction
  • Humanizing alerting
  • Chapter 13 Creating Feedback Loops around the Customer
  • Creating a Customer Feedback Process
  • Creating a Feedback Loop
  • Receive
  • Analyze
  • Communicate
  • Change
  • Collecting Feedback
  • Satisfaction surveys
  • Case studies
  • Dogfooding
  • Asking for Continual Feedback
  • Net promoter score (NPS)
  • Finding a rhythm.
  • Chapter 14 DevOps Isn't a Team (Except When It Is)
  • Forming DevOps Teams
  • Aligning functional teams
  • Dedicating a DevOps team
  • Creating cross-functional product teams
  • Interviewing Quickly (But Not Too Quickly)
  • Deciding on a Job Title
  • Recruiting Never Ends
  • Finding the right folks
  • Passing along great candidates
  • Evaluating Technical Ability
  • Whiteboarding revisited
  • Offering take-home tests
  • Reviewing code
  • Firing Fast
  • The jerk
  • The martyr
  • The underperformer
  • Chapter 15 Empowering Engineers
  • Scaling Engineering Teams with DevOps
  • Three stages of a company
  • Motivating Engineers
  • Researching motivation
  • DevOpsing motivation
  • Avoiding reliance on extrinsic rewards
  • Autonomy
  • Mastery
  • Purpose
  • Making work fun
  • Allowing people to choose their teams
  • Measuring Motivation
  • Part 4 Practicing Kaizen, the Art of Continuous Improvement
  • Chapter 16 Embracing Failure Successfully
  • Failing Fast in Tech
  • Failing safely
  • Containing failure
  • Accepting human error (and keeping it blameless)
  • Failing Well
  • Maintaining a growth mindset
  • Creating the freedom to fail
  • Chapter 17 Preparing for Incidents
  • Combating "Human Error" with Automation
  • Focusing on systems: Automating realistically
  • Using automation tools to avoid code integration problems
  • Handling deployments and infrastructure
  • Limiting overengineering
  • Humanizing On-Call Rotation
  • When on-call duties become inhumane
  • Humane on-call expectations
  • Managing Incidents
  • Making consistency a goal
  • Adopting standardized processes
  • Establishing a realistic budget
  • Making it easy to respond to incidents
  • Responding to an unplanned disruption
  • Empirically Measuring Progress
  • Mean time to repair (MTTR)
  • Mean time between failures (MTBF)
  • Cost per incident (CPI).
  • Chapter 18 Conducting Post-Incident Reviews
  • Going beyond Root Cause Analysis
  • Stepping through an Incident
  • Succeeding at Post-Incident Reviews
  • Scheduling it immediately
  • Including everyone
  • Keeping it blameless
  • Reviewing the timeline
  • Asking tough questions
  • Acknowledging hindsight bias
  • Taking notes
  • Making a plan
  • Part 5 Tooling Your DevOps Practice
  • Chapter 19 Adopting New Tools
  • Integrating with Open Source Software
  • Opening community innovation
  • Licensing open source
  • Deciding on open source
  • Transitioning to New Languages
  • Compiling and interpreting languages
  • Parallelizing and multithreading
  • Programming functionally
  • Managing memory
  • Choosing languages wisely
  • Chapter 20 Managing Distributed Systems
  • Working with Monoliths and Microservices
  • Choosing a monolithic architecture first
  • Evolving to microservices
  • Designing Great APIs
  • What's in an API
  • Focusing on consistent design
  • Containers: Much More than Virtual Machines
  • Understanding containers and images
  • Deploying microservices to containers
  • Comparing orchestrators: Harmonize the hive
  • Configuring containers
  • Monitoring containers: Keeping them alive until you kill them
  • Securing containers: These boxes need a lock
  • Chapter 21 Migrating to the Cloud
  • Automating DevOps in the Cloud
  • Taking your DevOps culture to the cloud
  • Learning through adoption
  • Benefitting from cloud services
  • Cumulus, Cirrus, and Steel: Types of Clouds
  • Public cloud
  • Private cloud
  • Hybrid cloud
  • Cloud as a Service
  • Infrastructure as a Service
  • Platform as a Service
  • Software as a Service
  • Choosing the Best Cloud Service Provider
  • Amazon Web Services (AWS)
  • Microsoft Azure
  • Google Cloud Platform (GCP)
  • Finding Tools and Services in the Cloud
  • Part 6 The Part of Tens.
  • Chapter 22 Top Ten (Plus) Reasons That DevOps Matters.