{"id":1565,"date":"2025-05-21T20:48:12","date_gmt":"2025-05-21T18:48:12","guid":{"rendered":"https:\/\/extendsclass.com\/blog\/?p=1565"},"modified":"2025-01-26T11:32:22","modified_gmt":"2025-01-26T09:32:22","slug":"getting-started-with-devops","status":"publish","type":"post","link":"https:\/\/extendsclass.com\/blog\/getting-started-with-devops","title":{"rendered":"Getting started with DevOps on your projects"},"content":{"rendered":"\n<p>DevOps is the movement aimed at bringing together the development team (Dev) and operations teams (Ops) to boost performance through collaboration, automation, and continuous integration!<\/p>\n\n\n\n<p>At first glance, this can be intimidating for developers (I used to dread anything related to production myself). However, it\u2019s absolutely worth it \u2014 there\u2019s so much to gain as a developer!<\/p>\n\n\n\n<p>In this article, we\u2019ll dive into the power of this movement and the first steps developers can take to integrate DevOps culture into their projects.<\/p>\n\n\n\n<div id=\"ez-toc-container\" class=\"ez-toc-v2_0_47_1 counter-hierarchy ez-toc-counter ez-toc-grey ez-toc-container-direction\">\n<div class=\"ez-toc-title-container\">\n<p class=\"ez-toc-title\">Table of Contents<\/p>\n<span class=\"ez-toc-title-toggle\"><a href=\"#\" class=\"ez-toc-pull-right ez-toc-btn ez-toc-btn-xs ez-toc-btn-default ez-toc-toggle\" aria-label=\"ez-toc-toggle-icon-1\"><label for=\"item-69dac5575aa81\" aria-label=\"Table of Content\"><span style=\"display: flex;align-items: center;width: 35px;height: 30px;justify-content: center;direction:ltr;\"><svg style=\"fill: #999;color:#999\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"list-377408\" width=\"20px\" height=\"20px\" viewBox=\"0 0 24 24\" fill=\"none\"><path d=\"M6 6H4v2h2V6zm14 0H8v2h12V6zM4 11h2v2H4v-2zm16 0H8v2h12v-2zM4 16h2v2H4v-2zm16 0H8v2h12v-2z\" fill=\"currentColor\"><\/path><\/svg><svg style=\"fill: #999;color:#999\" class=\"arrow-unsorted-368013\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"10px\" height=\"10px\" viewBox=\"0 0 24 24\" version=\"1.2\" baseProfile=\"tiny\"><path d=\"M18.2 9.3l-6.2-6.3-6.2 6.3c-.2.2-.3.4-.3.7s.1.5.3.7c.2.2.4.3.7.3h11c.3 0 .5-.1.7-.3.2-.2.3-.5.3-.7s-.1-.5-.3-.7zM5.8 14.7l6.2 6.3 6.2-6.3c.2-.2.3-.5.3-.7s-.1-.5-.3-.7c-.2-.2-.4-.3-.7-.3h-11c-.3 0-.5.1-.7.3-.2.2-.3.5-.3.7s.1.5.3.7z\"\/><\/svg><\/span><\/label><input  type=\"checkbox\" id=\"item-69dac5575aa81\"><\/a><\/span><\/div>\n<nav><ul class='ez-toc-list ez-toc-list-level-1 ' ><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-1\" href=\"https:\/\/extendsclass.com\/blog\/getting-started-with-devops\/#The_need_for_agility\" title=\"The need for agility\">The need for agility<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-2\" href=\"https:\/\/extendsclass.com\/blog\/getting-started-with-devops\/#The_DevOps_miracle\" title=\"The DevOps miracle\">The DevOps miracle<\/a><ul class='ez-toc-list-level-3'><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-3\" href=\"https:\/\/extendsclass.com\/blog\/getting-started-with-devops\/#Steps_to_adopt_DevOps\" title=\"Steps to adopt DevOps\">Steps to adopt DevOps<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-4\" href=\"https:\/\/extendsclass.com\/blog\/getting-started-with-devops\/#DevOps_beyond_the_development_team\" title=\"DevOps beyond the development team\">DevOps beyond the development team<\/a><\/li><\/ul><\/nav><\/div>\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"The_need_for_agility\"><\/span>The need for agility<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p>The world is highly competitive, and speed is critical in the digital economy. Customers are increasingly demanding and always expect greater responsiveness.<\/p>\n\n\n\n<p>Agile methodologies, like Scrum, break projects into small units called user stories, enabling rapid iterations. However, they fall short if production deployments don\u2019t keep pace.<\/p>\n\n\n\n<p>Often, the real bottleneck for speed lies in production, where separate teams can slow down the process (everyone has their own priorities and, at times, conflicting constraints). A project may quickly accumulate updates, but those changes can\u2019t be deployed to production without addressing aspects like security, performance, and availability.<\/p>\n\n\n\n<p>When I started working at a software company about twenty years ago, on-premise environment updates were dreaded and, at best, happened once a year oO. We often had to fight with clients to make them happen\u2026 even though they were simultaneously requesting new features (a bit contradictory, right?). It was a different era\u2014one I don\u2019t miss at all! ^^ The Cloud has completely transformed how software companies manage things today!<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"The_DevOps_miracle\"><\/span>The DevOps miracle<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p>DevOps offers a solution to this challenge by bringing development and operations teams closer together, enabling them to work collaboratively to deliver faster while ensuring system stability in production. This movement is built on three pillars:<\/p>\n\n\n\n<ul>\n<li><strong>Tools<\/strong>: Automating tasks.<\/li>\n\n\n\n<li><strong>Processes<\/strong>: Embedding best practices into development cycles.<\/li>\n\n\n\n<li><strong>People<\/strong>: Facilitating effective team collaboration (AI hasn\u2019t replaced us yet ^^). <\/li>\n<\/ul>\n\n\n\n<p>With DevOps, the division of responsibilities has evolved: tasks traditionally handled by operations teams are now being shifted to development teams. For example, developers can take on responsibilities like managing deployments or monitoring application performance.<\/p>\n\n\n\n<p>Companies such as Amazon have demonstrated that DevOps enables significantly more frequent deployments with reduced error rates!<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Steps_to_adopt_DevOps\"><\/span>Steps to adopt DevOps<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<p><strong>1. Development team foundations<\/strong><\/p>\n\n\n\n<p>The development team must first adopt fundamental best practices: version control (e.g., Git), agile project management (or a similar approach), and testing (unit tests, end-to-end tests). These are essential prerequisites before moving on to more advanced DevOps tools and processes.<\/p>\n\n\n\n<p><strong>2. Set up a developer sandbox<\/strong><\/p>\n\n\n\n<p>It\u2019s crucial for developers to gain hands-on experience with servers. This practical exposure helps them better understand production challenges.<\/p>\n\n\n\n<p><strong>3. Implement continuous integration (CI)<\/strong><\/p>\n\n\n\n<p>Continuous Integration allows every code change to be automatically tested, reducing the risk of introducing errors into production. After all, it\u2019s nearly impossible to manually test every edge case for each change or fix. Moreover, when coding, it\u2019s easy to forget all the edge cases\u2014especially the more unusual ones.<\/p>\n\n\n\n<p><strong>4. Automate deployments<\/strong><\/p>\n\n\n\n<p>Deployments should be fully automated to enable frequent and rapid releases to production.<\/p>\n\n\n\n<p><strong>5. Establish monitoring<\/strong><\/p>\n\n\n\n<p>Monitoring is vital to quickly detect issues and ensure system reliability. Building strong trust in these processes is key, enabling teams to identify and resolve problems efficiently. The goal is to make deployments a well-controlled, confidence-inspiring process rather than a cause for concern.<\/p>\n\n\n\n<p>For example, developers should have access to a production-like environment to conduct tests and reproduce issues, without having to submit a request to another team and wait several days\u2026<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"DevOps_beyond_the_development_team\"><\/span>DevOps beyond the development team<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p>Adopting DevOps isn\u2019t limited to developers. It also involves infrastructure and operations teams. The lines between these teams are no longer blurred! <\/p>\n\n\n\n<p>There are other steps to implement, such as automating infrastructure configuration (provisioning), and many more!<\/p>\n\n\n\n<p>The adoption of DevOps is built on continuous improvement. This means regularly measuring performance, analyzing issues, and iterating to continuously enhance the development and deployment processes.<\/p>\n\n\n\n<p>Since I\u2019m a developer, I\u2019ll stop here ^^<\/p>\n\n\n\n<p><\/p>\n\n\n\n<p><\/p>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>DevOps is the movement aimed at bringing together the development team (Dev) and operations teams (Ops) to boost performance through collaboration, automation, and continuous integration! At first glance, this can be intimidating for developers (I used to dread anything related to production myself). However, it\u2019s absolutely worth it \u2014 there\u2019s so much to gain as [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":1570,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_sitemap_exclude":false,"_sitemap_priority":"","_sitemap_frequency":""},"categories":[2],"tags":[],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/extendsclass.com\/blog\/wp-json\/wp\/v2\/posts\/1565"}],"collection":[{"href":"https:\/\/extendsclass.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/extendsclass.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/extendsclass.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/extendsclass.com\/blog\/wp-json\/wp\/v2\/comments?post=1565"}],"version-history":[{"count":4,"href":"https:\/\/extendsclass.com\/blog\/wp-json\/wp\/v2\/posts\/1565\/revisions"}],"predecessor-version":[{"id":1567,"href":"https:\/\/extendsclass.com\/blog\/wp-json\/wp\/v2\/posts\/1565\/revisions\/1567"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/extendsclass.com\/blog\/wp-json\/wp\/v2\/media\/1570"}],"wp:attachment":[{"href":"https:\/\/extendsclass.com\/blog\/wp-json\/wp\/v2\/media?parent=1565"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/extendsclass.com\/blog\/wp-json\/wp\/v2\/categories?post=1565"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/extendsclass.com\/blog\/wp-json\/wp\/v2\/tags?post=1565"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}