What is DevOps?

Software Development Life Cycle process and flat icon

So what in the world is “DevOps” and why is it all the buzz right now?

Basically the term DevOps is a mashup of the Development + Operations (clever right?). All it really means is that development shops have finally come around to see the light that building a piece of software is really pretty worthless unless you can also interact with the business team, fix bugs, build enhancements, deploy the application, and support it.

So DevOps = A mature development team that understands the way business really works and is willing to be involved in the full lifecycle of software development. Basically it is what I’ve been doing for years, but now I have a fancy new term for it.

But let’s dig a little deeper because there actually are some methodologies and practices that are close associated with the term.

Development and Operations

Mobile application development concept

As we mentioned, the term itself is an intersection of two words “development” and “operations.” The “Ops” in DevOps refers to anyone from systems engineers and administrators to network engineers and security professionals. The “Dev”, of course, stands for developers just like us.

And it’s very agile in nature. If you have read our posts, then you already know that we’re big fans of this approach.

Just like agile development seeks to respond to changing requirements and provide close interaction, agile also comes into play when working with Development and Operations.

Rajiv Pant CTO and VP at the New York Times is widely quoted for his definition of DevOps. He defines it as “a set of processes, methods and systems for communication, collaboration and integration between departments for Development (Applications/Software Engineering) and Technology Operations.”

Improve Communications

Business people talking on meeting at officeHave you ever felt that your developers didn’t fully understand you? There’s a reason for that. Often there is a huge disconnect between developers and operations and, ultimately, DevOps seeks to mend this rift. The end result can greatly decrease not only inefficiency, but also frustration. When it comes to getting your job done right, inefficiency and frustration can be your two biggest enemies.

DevOps deals heavily with communication. It also deals with cooperation and the exchange of information. We even get a little “touchy feely” when we talk about DevOps as feelings like empathy comes into play. In his blog Adaptive IT, “Thoughts on Cloud, DevOps, and Design Thinking”, Jeff Sussna writes about how DevOp involves empathy at its core.

In order to achieve the optimal end results for customers, both developers and operators need to help one another. “Empathy allows ops engineers to appreciate the importance of being able push code quickly and frequently, without a fuss. It allows developers to appreciate the problems caused by writing code that’s fat, or slow, or insecure.”

We have empathy and understanding for our clients. Simply stated, we maintain our workflow in a way that keeps them from wanting to tear their hair out.

When it comes to producing positive end results quickly and efficiently, this factor makes all the difference.

Achieving Unity

Development people and operations people can come from two different mindsets. Overall, development people want to make dynamic changes based on needs that arise. Operations people tend to be more resistant to change. They appreciate elements like stability.

But when the two parties get along and understand one another, wonderful things can happen! When barriers are removed, more business objectives can be achieved.

When development teams and Operations unify with one and adopt an agile approach, the results speak for themselves. We stay in constant communication and ensure all parties are satisfied during the process.

The Pinnacle of Project Management and Speed

Project Management Flow ChartDevOps involves continuous development and delivery. This means that the old paradigms of project management have been redefined. It says goodbye to the typical hierarchical approach. Instead, everyone is working under the same roof and the communication flows fluidly.

The work takes place rapidly in small groups. And the client is brought in throughout the process. When developers can learn of the requirements and develop and test them, then they can roll out information to clients in a procedural manner. Each time adjustments are made, they take place rapidly and everyone knows that they are occurring. As you can see, communication becomes a natural part of the project.

You’ll find that projects are far more likely to run on time when everyone is fully engaged and on the same page. This approach strongly stresses continuous integration. That is another factor that keeps things running smoothly and quickly.

Want to Know More about DevOps?

Ready to learn more? The term DevOps initially became popular through DevOps Days, which started in Belgium in 2009 with the motto “the conference that brings development and operations together.” There have been other DevOps Days conferences in many other countries to date including the US, India, Australia, Brazil and New Zealand.

To view the locations for upcoming DevOps Days events, visit http://www.devopsdays.org. Eleven events are planned for 2015. Maybe you’ll want to attend one and dive in even deeper!

It’s How We Work

Brad Gatewood Consulting DevOps solutions allow you to outsource development, enhancement, support, and maintenance. We integrate DevOps concepts into our work each and every day. This approach will dramatically improve your outcomes. Contact us today for more information about how DevOps and how it can improve your project.