What is DevOps?

The DevOps movement started to amalgamate around 2007 and 2008, when IT operations and software development communities raised concerns about what they felt was a crucial level of dysfunction in the industry.

They berated the traditional software development model, where those who wrote codes had to be organizationally and functionally apart from those who deployed and supported that code.

Developers and IT/Ops professionals had separate (and often competing) objectives, separate department leadership, and separate key performance indicators by which they were judged, and often worked on separate floors or even separate buildings. The result was siloed teams concerned only with their own fiefdoms, long hours, botched releases, and unhappy customers. Surely there’s a better way, they said. So, the two communities came together and started talking – with people like Patrick Dubois, Gene Kim, and John Willis driving the conversation.

What began in online forums and local meet-ups is now a major theme in the software tenor,

DevOps core values are Culture, Automation, Measurement, and Sharing (CAMS), and an organization's adherence to them influences how successful it is.

  • Culture brings people and processes together;

  • Automation creates a fabric for DevOps;

  • Measurement permits improvements; and

  • Sharing enables the feedback loop in the CAMS cycle.

Another DevOps concept is the idea that almost everything can be managed in code: servers, databases, networks, log files, application configurations, documentation, automated tests, deployment processes, and more.

Benefits of DevOps

Speed

speed.png

Move, in the quickest motion so that innovation for customers is faster, adapt to changing markets better, and grow more efficiently at driving business results. The DevOps model enables developers and operations teams to achieve these results.

Reliability Ensure the quality of application updates and infrastructure changes so you can reliably deliver at a more rapid pace while maintaining a positive experience for end users. Use practices like continuous integration and continuous delivery to test that each change is functional and safe. Monitoring and logging practices help you stay informed of performance in real-time.

Scale

scale.png

Operate and manage your infrastructure and development processes at scale. Automation and consistency help you manage complex or changing systems efficiently and with reduced risk. For example, infrastructure as code helps you manage your development, testing, and production environments in a repeatable and more efficient manner.

Improved Collaboration Build more effective teams under a DevOps cultural model, which emphasizes values such as ownership and accountability. Developers and operations teams collaborate closely, share many responsibilities, and combine their workflows. This reduces inefficiencies and saves time (e.g. reduced handover periods between developers and operations, writing code that takes into account the environment in which it is run).

Security

security.png

Move quickly while retaining control and preserving compliance. You can adopt a DevOps model without sacrificing security by using automated compliance policies, fine-grained controls, and configuration management techniques. For example, using infrastructure as code and policy as code, you can define and then track compliance at scale. What is devops?

DevOps Success Story

Amazon

Prior to when Amazon grew to the state it is now, there was a constant need to anticipate how much sales would grow in order to put systems in place to meet the need and plan for any spikes.

As a result, server capacity was wasted in high numbers. When people were shopping for Christmas, for example, the amount of unused server space grew tremendously. Eventually, Amazon moved to Amazon Web Services (AWS) cloud, allowing engineers to scale up or down as needed. This helped to reduce a large amount of spending on server capacity but it did something that was even more important: it helped the company to transition to a continuous deployment process that allowed any developer to deploy their own code.

After about a year, engineers had crept the speed of their deployment and the reduced the number and duration of outages, which led to more revenue and happier customers. It probably also helped to get us to this point in history: where many of us get packages a few times a week.

Netflix Netflix started as a DVD service with a smaller streaming portion. You could select a movie and it would be mailed to you. However, over the years it changed into the streaming service that we know now. At the time it started to switch, there weren’t any tools that could handle the massive cloud infrastructure that was needed to keep everything running smoothly. Developers within Netflix (and volunteers) started to use open source solutions to create automated tools that would test the infrastructure and allow the company to identify any vulnerabilities easily and then find ways to fix them before customers were impacted. While there have been some hiccups over the years, for the most part, this method has worked.

Since that time, Netflix has continued to upgrade its systems as more people are signing up and watching more and more content.

The Big Box Giants

There are two big box stores that we all know: Target and Walmart. These businesses have been utilizing DevOps for years - in both cases, before they were popular in the wider market. Both use DevOps to power the development behind their mobile applications and coupon programs, they also help to transform the cultures of both organizations. While their stores seem to do extremely well in most locations, both struggle online to compete with the likes of Amazon. However, they use DevOps to give online customers the best possible experiences.

DevOps Can Lead To Your Success Story

Using DevOps in development can help to keep your applications safe from different threats that are presented, allowing you to release applications faster. At the same time, your IT teams will be able to adjust and adapt to new technologies as well. By using DevOps, you will be able to stop potential problems and alerting your team instantly.

Small teams benefit from the use of DevOps because it takes some of the pressure off of all team members to take the brunt of the work - and if giants like Amazon or Netflix can do it, your team can certainly do it. You’ll be able to integrate security into your workflow, so it doesn’t seem like anyone is doing “extra” work. At the same time, you will have a better end product that you will be able to take pride in and trust. DevOps success stories