Lock in $30 Savings on PRO—Offer Ends Soon! ⏳

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

More Decks by Niko Kivelä

Other Decks in Technology

Transcript

  1. SOK S Group consists of 19 independent regional cooperatives. SOK

    is owned by the cooperatives and provides them with services S Group is a customer-owned Finnish network of companies* in the retail and service sectors, with more than 1,900 outlets in Finland
  2. Niko Kivelä Head of DevOps @ SOK Previously § Finnair

    § Verkkokauppa.com Numbers Facts https://linkedin.com/in/nikokivela § 41 years § 20 years § 4 companies § 16.6 % 🤖 § 3 🐈 § 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 Experience
  4. 7 § 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 Things I can control. Things I can influence. Things I have no control over. 24/7 on-call Recruiting Capabilities Skill building
  22. 35 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
  23. 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.
  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

    Cloud Team, Security Team, Monitoring Solution, Design System, … Prisma, Sokos, S-Kaupat, ABC, … Payment Provider, Starship Technologies, … SOK DevOps
  26. Image by Hans from Pixabay 1988 2003-2015 1983 1970 Waterfall

    1960 TPS Lean 1995 Scrum 2001 Agile 2003 SRE DevOps 2016 SRE2 2019 2022 2018 PlatformOps 2009
  27. Developer Experience Platform Engineering Developer Relations What How Why Value

    Chain DevOps DevOps originated from Agile practices. ... and applies those principles beyond software teams. DevOps produces better Developer Experience Platform Engineering is a logical extension of DevOps. … and is the enabler of value delivery. It produces Internal Developer Portals. You need DevOps skills... You need Product Management skills... You need Marketing skills.. ... to build Platform Engineering teams. Product Self-service Discovery Advocacy Enablement Community
  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. DevOps is Culture Platform is Practice Agile is Ways of

    Working Frameworks are Tools • - Thoughtworks Technology Advisory Board