Are you currently experiencing an attack?

Are you currently experiencing an attack?

What is DevOps?

Summary

The word “DevOps” is a combination of “development” and “operations.” However, the word has a broader meaning than just a combination of these two concepts.

Keep reading: Related Content

More Topics

Summary

The word “DevOps” is a combination of “development” and “operations.” However, the word has a broader meaning than just a combination of these two concepts.

What is DevOps?

The word “DevOps” is a combination of “development” and “operations.” However, the word has a broader meaning than just a combination of these two concepts.

DevOps is an approach to software development and delivery that provides faster time-to-market than traditional approaches. Ideally, it will also provide other benefits, such as higher team productivity, higher quality of delivered products, and the ability to use DevSecOps (thus ensuring better security).

Perhaps the most basic DevOps practice is indicated by its name. Organizations which use DevOps eliminate the traditional separation between development and operations. In some “DevOps shops,” the two teams work closely together. In others, the two teams have been merged, and the same engineers perform a variety of roles, from development to deployment and operations.

It is also common for test and QA to be integrated into development, with a tight feedback loop to increase software quality and speed up the development cycle. Ideally, security is also baked into the overall development process, and as DevOps has gone mainstream, many organizations are going one step further and adopting DevSecOps as well. This is a positive and encouraging trend. 

The discussion below covers a number of additional DevOps practices. DevOps is not a formal methodology, and organizations which use it vary in the number of practices that they have adopted. However, the practices listed here are widespread in the DevOps community. 

Microservice Designs 

Instead of creating and supporting large monolithic applications, development velocity and quality are substantially increased by adopting microservice architectures. Applications consist of a set of smaller independent services, which communicate via well-defined interfaces.

Continuous integration

Extensive changes to the codebase are slow and can create many challenges during testing/QA. Instead of doing this, most DevOps shops practice continuous integration (CI). Developers regularly merge their changes back into the central repository, and automated builds and tests are run frequently. This makes it easier to find software bugs and other problems. Software quality is increased, while the time spent in testing is decreased.

Continuous delivery

Instead of infrequently releasing major versions of software products, DevOps organizations regularly build and release smaller updates, which pass through automated testing and then become the current production release. This process of continuous delivery (CD) ensures that the latest features are always available to be shipped, and can be offered to customers and prospective customers immediately. It also allows organizations to have a tight feedback loop with users; reactions and requests can be received quickly, and responded to immediately. This CI/CD cycle repeats again and again, rapidly improving the featureset and quality of the software.

Tools

The unique requirements of DevOps requires unique tooling. Automation is an especially important aspect of DevOps, and many specialized tools have been created for this purpose. 

Infrastructure as Code

Traditional IT infrastructure maintenance is incompatible with Devops, because it is labor-intensive and time-consuming. It can also create other problems; servers will drift and cruft will accumulate, which creates inconsistencies and potential security vulnerabilities. Infrastructure as Code (IaC) is a different approach; infrastructure and resources are created and administered programmatically. This allows infrastructure to be provisioned and destroyed automatically as needed, and managed with software tools such as version control. This greatly increases the speed of administration, the consistency of infrastructure, the replicability of environments, and other important factors, such as the ability to use immutable infrastructure.

Get your price quote

Fill out your email below, and we will send you a price quote tailored to your needs

This website uses cookies to ensure you get the best experience on our website.