Tuesday, 24 July 2018

What is DevOps?

Born out of the difficulties of a challenging data migration project and getting siloed teams to work together better, DevOps has evolved into a movement to facilitate software development and its implementation, while improving reliability and increasing security. While the process of combining teams is hardly seamless, when done successfully, DevOps delivers significant benefits across businesses whether they are large or small.

DevOps combines the words Development and Operations, with the term originating in 2009 and attributed to Patrick Debois, who is widely considered the ‘Godfather of DevOps’ and is the founder of the popular DevOpsDays conference.

Debois’ philosophical approach to software development and operations grew from his experience the year prior with a data migration project for the Belgian government, where the project developers and the system administrators were simply not on the same page. After this, Debois created the aforementioned conference to share this experience, and a movement was born, which came to be known by its still popular Twitter hashtag #DevOps.

Linguistics aside, DevOps goes by various definitions, and in the end, is just a little different at any given organization. In general, DevOps is a term that describes a collection of principles, tools and even culture that endeavors to unify the development of software and its implementation in operations.

The goal of this to make an organization more nimble, so that products – like apps – can be developed at a faster pace than software is traditionally created. With DevOps, the usual barriers between the development and operations groups at an organization are completely removed, as these two traditionally separate teams get merged into a single group.

This way, engineers can work on a product throughout its lifecycle, and not just during development to then hand it off to others with less expertise, and less knowledge of what happened in the earlier stages of the project.

Security

 Integrating security

Quality Assurance is also handled internally by the team, without the involvement of an outside team, avoiding further fragmentation. In some cases, a third team, Security, also gets combined with DevOps, and this triple combination gets referred to as a related clipped compound term: DevSecOps. This integration of several teams contributes to this ‘leaner and meaner’ approach to software development and rollout.

Traditionally, software development, and its implementation, has been a laborious, manual-based process which is unsurprisingly sluggish. Today’s ever changing market innovates at breakneck speed, and the advantages go to those organizations that can keep up with this rapid pace – rather than risk the near certainty of being left behind.

DevOps uses tools to speed up these processes, for example, using technology stack and tooling to increase efficiency and reliability in software development. These tools also facilitate the deployment of code, which can be done from within the same team without the involvement of others, and this also contributes to the rapid pace of innovation and deployment of this DevOps model.

DevOps engineers involve themselves with more than just code automation. They also get stuck in with the implementation, which involves their company’s servers, including the more affordable open source operating system servers, including Linux and BSD.

Allstate

 DevOps at work

Now, let’s take a look at an example of DevOps at work. Allstate is a Fortune 500 company, with the origins of this insurance giant dating back to 1931. However, it is hardly nimble, with 16,000 employees, many of whom are out in the field.

The firm’s goal became to get its mobile workforce the latest tools to be able to work with a greater level of efficiency. Simultaneously, there was also a second goal of enabling better self-service for its customers, so that they would be able to make claims, and track them as they are processed.

While cost savings were reportedly the company’s previous priority, with the DevOps approach, the more recent focus has been on customer retention, and differentiated software features. Through the teamwork and common values that are central to the DevOps approach, the company has focused on product development on its app, and keeping it current with the ability to deploy the latest features rapidly.

On the horizon, Allstate also plans to continue using the DevOps approach to implement Internet of Things sensors in customer’s vehicles, using analytics to assess their driving habits. From the significant number of Allstate DevOps jobs currently listed, Allstate clearly continues to embrace this approach.

Speed and scale

With the inherent advantages of speed of deployment, better reliability, the ability to scale, and integrated security, it is not surprising that many organizations have embraced the DevOps approach. A recent survey of business technology decision makers was used to create the 2018 State of DevOps report. Some useful statistics to highlight include:

  • DevOps is popular with a third of respondents already using it, and 35% planning to implement it this year.
  • A key benefit is faster speed, with 69% claiming benefits of “increased speed and frequency of application deployment”.

While there are inherent advantages of DevOps, it is still a tool that needs to be applied selectively to the correct situation. For example, at Gartner conferences between 2015 to 2016, those surveyed indicated that “87% of [attendees] said DevOps had not delivered on expectations”.

Breaking down silos and combining teams requires a cultural shift; after all, the software development and Quality Assurance folks were on different teams for a reason originally, and they do not automatically share the same skillset just because we push their desks closer together.

Teams do not necessarily want to work with each other, and it takes time for this more modern DevOps approach to bed in, with a healthy dose of mutual respect needed for them to get along towards a common goal, and less concern about which of the former teams are running the show. This type of transition does not commonly occur overnight, at least with most organizations.

Born out of the difficulties of a challenging data migration project and getting siloed teams to work together better, DevOps has evolved into a movement to facilitate software development and its implementation, while improving reliability and increasing security. While the process of combining teams is hardly seamless, when done successfully, DevOps delivers significant benefits across businesses whether they are large or small.

https://ift.tt/2NGKh6h

No comments:

Post a Comment