Upgrade to Pro — share decks privately, control downloads, hide ads and more …

What You Need to Know About DevOps

What You Need to Know About DevOps

Since 2009, DevOps has undergone an enormous transformation. What used to start as devs and ops working together towards non-conflicting goals emerged into an organizational strategy that goes beyond team boundaries.

In this presentation, I will explain what I think about DevOps and what it really means. I tie it into related concepts such as Agile, Lean, SRE, and Platform Engineering through supporting theories, to mention a few: The Three Ways, Value Streams, Theory of Constraints, and Systems Thinking.

Niko Kivelä

May 07, 2024
Tweet

Other Decks in Technology

Transcript

  1. S Group is a customer-owned Finnish network of companies* in

    the retail and service sectors, with more than 1,800 outlets in Finland * supermarket trade, department stores and speciality store trade, service station store and fuel sales, the travel and hospitality business and the hardware trade and banking services through S-Bank. SOK S Group consists of 19 independent regional cooperatives. SOK is owned by the cooperatives and provides them with services
  2. Niko Kivelä Head of DevOps @ SOK Previously § Finnair

    § Verkkokauppa.com Numbers Facts https://linkedin.com/in/nikokivela § 41 years § 20 years § 4 companies § 3 cats § DevOps Finland Meetup Organizer § AWS Community Builder § Tech Nordic Advocates Startup Mentor § Public Speaker & Published Author
  3. 1. What is DevOps? DevOps is built on existing knowledge.

    üTPS, Waterwall, Lean üScrum, Agile üSRE 2. DevOps, Simplified What our industry thinks about DevOps? 3. The Myth What You need to know before you go. üResponsibility vs Accountability üHealthy boundaries... 4. Complementary Roles Did you know that DevOps is the only industry that keeps generalizing? üPlatform Engineering üDeveloper Productivity
  4. 8 § 1960’s Toyota Production System (TPS) § 1970 Waterfall

    § 1988 Lean § 1995 Scrum Once Upon a Time § 2001 Agile § 2003 SRE § 2009 DevOps
  5. Backlog Requirements Design Review Test Deploy Develop Plan Develop Requirements

    Design Test Deploy Maintenance 1. Generation 2. Generation
  6. 3. Generation § Extends Agile § Emphasizes end-to-end responsibility §

    Automate and eliminate waste § Focus on cross- functional autonomous teams Monitor Release Verify Create Plan Configure Package Agile
  7. DevOps is a methodology in the software development and IT

    industry. Used as a set of practices and tools, DevOps integrates and automates the work of software development (Dev) and IT operations (Ops) as a means for improving and shortening the systems development life cycle.
  8. Gartner defines DevOps as a change in IT culture, focusing

    on rapid IT service delivery through the adoption of agile, lean practices in the context of a system-oriented approach.
  9. DevOps team is autonomous, self-organized and has capabilities to deliver

    with world-class agility, reliability & security
  10. DevOps is the union of people, process, and products to

    enable continuous delivery of value to our end users. – Donovan Brown. Partner Program Manager Principal Cloud Advocate Manager DevOps Program Manager
  11. Image by Hans from Pixabay 1988 2003-2015 1983 1970 Waterfall

    1960 TPS Lean 1995 Scrum 2001 Agile 2003 SRE 2009 DevOps
  12. DevOps is a human problem 2. Value Stream 1. The

    Three Ways 3. The Theory of Constraints 4. Systems Thinking Velocity
  13. The 1stWay Flow/Systems Thinking The 2ndWay Amplify Feedback Loops The

    3rdWay Culture of Continual Experimentation and Learning Business Customers Dev Ops Dev Ops Dev Ops 1 The Three Ways
  14. 2 Value Stream Value Stream Mapping is a Lean tool

    that is used to visualize a production process. It helps to increase the value of the product or service by identifying bottlenecks and eliminating waste. https://en.wikipedia.org/wiki/Value-stream_mapping
  15. DevOps is a culture, based on a service mindset and

    a role, . that promotes developer productivity.. DevOps is not a job, but it’s an organizational strategy. . Ultimately, DevOps is all about communication and in one doing.
  16. Idea Product Dev Ops Monitor Release Verify Create Plan Configure

    Package Continuous Deployment Continuous Monitoring Continuous Delivery Continuous Integration
  17. Agile Continuous Delivery Continuous Monitoring Site Reliability Engineering Continuous Deployment

    Continuous Integration Delivery Code Build Test Deploy Plan Configure Monitor Idea Product
  18. Image from TechCrunch This brings developers into contact with the

    day-to-day operation of their software. It also brings them into day-to-day contact with the customer. This customer feedback loop is essential for improving the quality of the service YOU BUILD IT, YOU RUN IT
  19. The problematic assumption in DevOps is, that product teams with

    full autonomy are expected to have end-to- end responsibility. No single product team is truly responsible for the production environment but managing their application in a production environment. RESPONSIBILITY
  20. Accountability § Result oriented § Assigned to one person §

    Cannot be voluntarily taken § Cannot be delegated Responsibility § Task oriented § Can be assigned to many § Can be taken up § Can be delegated Autonomy § Requires trust § Needs transparency § Expects boundaries § Creates ownership Team autonomy Team is responsible for solving the given business problem in the most effective way. - Responsibility - Mandate - Trust - Direction - Accountability - Results
  21. Responsibility Responsibility can be given to someone else, but it

    needs to be taken voluntarily. - Responsible of outcomes - Accountability - Delegate - Trust - Service Agreement Platform Engineering is a new discipline that emerged in response to the growing complexity of modern cloud-native architectures. It describes the practice of building and maintaining an integrated product, called an “Internal Developer Platform,” which acts as a flexible and supported abstraction layer between developers and the underlying technologies of their applications. Gartner writes that “platform engineering is trending because of its promise to optimize the developer experience and accelerate product teams’ delivery of customer value.” They predict that, by 2026, 80 percent of software engineering organizations will have platform teams building Internal Developer Platforms. Things I can control. Things I can influence. Things I have no control over.
  22. Idea Product Dev Ops Input System Output Output SRE Dev

    Positive feedback Negative feedback Positive feedback loop is amplifying or magnifying the change or output. The response effect is magnified so that it can occur much faster. In this form of feedback, the output of the system is enhanced. The negative feedback loop is a particular form of a feedback loop where negative outcomes are systematically rerouted into the operations. You might be surprised to learn that a negative feedback loop is not a bad thing.
  23. 36 Software Development SRE is what you get when you

    treat operations as if it’s a software problem. Our mission is to protect, provide for, and progress the software and systems behind all of Google’s public services — Google Search, Ads, Gmail, Android, YouTube, and App Engine, to name just a few — with an ever-watchful eye on their availability, latency, performance, and capacity. - Google DevOps is the union of people, process, and products to enable continuous delivery of value to our end users. - Donovan Brown, Microsoft Any person working with operations without need software engineering skills and mastering the cloud
  24. § Develop the platform as a Product § Treat developers

    as your Customers § Don’t expect developers to use your product § Choose a self-service approach, capabilities, automation and processes Platform Engineering is a product management challenge
  25. Complicated-subsystem team Stream-aligned team Enabling Team Platform Team XaaS XaaS

    Hybrid Cloud, Ops Capabilities, Design System, … Prisma, Sokos, S-Kaupat, … Payment Provider, Starship Technologies, … DevOps & Developer Experience Cloud Engineering & Delivery
  26. Image by Hans from Pixabay 1988 2003-2015 1983 1970 Waterfall

    1960 TPS Lean 1995 Scrum 2001 Agile 2003 SRE 2009 DevOps 2016 SRE2 2019 2022 2018 PlatformOps
  27. Why DXis sometimes more important than CX? Forbes To Build

    A Great Customer Experience, You Need A Great Developer Experience … the developer experience is a critical driver of business value, directly affecting the quality and overall profitability of the digital products a company delivers. McKinsey Developer Velocity: How software excellence fuels business performance Organizations that enable software teams to experiment, fail, and learn in a safe environment see consistently better results. Gartner A Software Engineering Leader’s Guide to Improving Developer Experience A great developer experience empowers developers and raises developer satisfaction and software quality. It also enables organizations to innovate faster and retain top talent.
  28. Developer Experience Developer Experience is the satisfaction and usability of

    tools, technologies, and processes that developers use in their work. - Dr. Nicole Forsgren, Partner at Microsoft Research Developers - Increased productivity - Boost creativity Teams - Better quality - Less technical depth Organizations - Drive innovation - Better retentions Flow State Feedback Loops Cognitive Load
  29. 7.5.2024 45 The SPACE framework is a research- based approach

    to measuring, understanding, and improving software development productivity. It encourages engineering leaders to have a holistic approach to productivity.
  30. DORA: Lagging Indicators DORA metrics, also known as the DORA

    (DevOps Research and Assessment) metrics, are a way to measure how well an organization is doing in terms of software development and delivery. 47 Key Metrics § Lead Time For Changes (LTC) § Deployment Frequency (DF) § Change Failure Rate (CFR) § Mean Time to Restore Service (MTTR) Velocity Stability
  31. Quality Deployment Frequency Change Failure Rate Continuous Integration Lead Time

    for Changes How code is tested? How to improve quality? Smaller Batch Size Easier Code Reviews Faster Feedback Less Cognitive Load Smaller Impact Radius Less Rework Smaller Outages Developer Happy Developer Developer Effectiveness Less Waste Observability Monitor Signal Observe
  32. DevOps is Culture Platform is Practice Agile is Ways of

    Working Frameworks are Tools • - Thoughtworks Technology Advisory Board
  33. ALAOTSIKKO üDevOps originated from Agile practices and applies those principles

    beyond software teams. üDevOps produces a better Developer Experience, while Platform Engineering is the enabler of value delivery and a logical extension of DevOps. üTeam autonomy creates ownership and boosts developer productivity to scale and deliver value even faster. Key takeaways