DevOps: why should I bother and what do I need to start?

devopsdays
DevOps has already taken the IT industry by storm. More and more companies are leveraging it’s advantages gaining time, customer satisfaction, which then leads to more profit. In this post I will present various reasons to move into the DevOps direction and I will also describe what are the key components needed to incorporate this culture.

What is DevOps

I believe most of you are already familiar with this definition, but just in case I will briefly remind it. DevOps is a culture which aim is to make the collaboration and communication more efficient in order to create and deliver better software in a frequent, but still reliable way. It involves an automation of software delivery processes which makes building, testing and releasing software more rapid. Moreover you must understand that DevOps is not only a set of technical tools: it is a cultural change that should be embraced by various teams in your company.

Why DevOps?

Key objectives for DevOps are:

  • Reduce the time to market for software changes
  • Increase reliability and stability of software changes
  • Reduce costs and risks of deployment processes

As you can see all of these points are focused on the business advantages. DevOps lets you deliver your software quicker and that means your users are able to use new features faster. In case of bugs, they are fixed in the lower amount of time. Moreover, if there is some kind of new regulatory requirement you are able to react in a short period of time. Time is money and with DevOps you can save a lot.

In the past keeping focus on speed usually meant giving up on quality, but is not the case with DevOps. High degree of automation demands automated testing which ensures high quality of your software. What is more, as also deployment processes are automatic, your team can focus on what really matters: the new features for the users.

Still not convinced?

If words do not convince you I am presenting you numbers from 2016 State of DevOps Report which involved 25,000 people taking part in the survey over the past five years. The report confirms that investment in DevOps pays off: it improves quality, security, business outcomes and even employee engagement.

In the study we can find a division of IT companies for three groups: High, Medium and Low IT Performers divided by deployment frequency, lead time for changes, mean time to recover and change failure rate. In the first group the deployments were on demand, involving multiple deploys a day, the lead time for changes was less than one hour, mean time to recover was less than one hour and the failure rate is between 0 and 15 percent. Pretty impressive, right?

Source: Puppet
Source: Puppet

The key findings of the study was that high performers deploys 200 times more frequently than low performers. What it more the recovery times are 24 times faster. As I said earlier, high speed does not mean low quality: the change failure rates are 3 times lower compared to the low performing IT companies.

Moreover, high performers manage to keep their employees happier. They are 2.2 times more likely to recommend their organisation to a friend and 1.8 times more likely to recommend their team as a great working environment. Why keeping your workers pays off is a topic for another blog post, but in this article: Why Employee Engagement? you can find a list of studies proving it.

What is more the report confirms that DevOps can save you time and money. It states that in the high-performing organisations:

  • 22% less time is spend on unplanned work and rework
  • 50% less time is spend on fixing security issues

For more information on other benefits and deeper analysis of the survey results visit 2016 State of DevOps Report page where you can download the whole study.

What do I need?

devops-toolchain-svg

In this paragraph I am going to present an exemplary set of tools that could help you incorporating a DevOps culture in an organisation. You must remember that this is only an example as this change may involve various components. However, it is very probable you will need most of them.

Exemplary DevOps components are:

  • task management system – lets you track progress of the tasks and also keep your documentation and reports
  • version control system – allows you to control the code changes
  • continuous integration tool – helps you automate processes like building, testing, deploying
  • application platform – where you can deploy, run and scale your application

In order for these components to work properly they must be well integrated and each of them should be efficient. Happily, popular tools offer you many integrations. Moreover they are already prepared for the high degree of automation, which is vital in the DevOps world.

Toolbox

An example stack could look like this:

  • JIRA as a task management system
  • Bitbucket as a code repository
  • Jenkins as a continuous integration tools
  • and finally Openshift as an application platform

What is more, all of the tools provide plugins to integrate with each other. Do you need to create a git branch for a task in JIRA? No problem, appropriate action is available directly from your JIRA board. Would you like to change the status of the task automatically depending on the build status on Jenkins? Install a necessary plugin and you are ready to go! It is up to you how will you define your workflow and these tools provide you with the capabilities to make it possible. Finally, here is a list of plugins that might be worth to try:

How do I use it?

The beauty of this setup is that is very convenient and easy to use. The business owner can manage the project progress in the task management tool and thanks to the fact that everything is automated, the statuses are always up to date. In addition, the member of the DevOps team does not need to worry about the process of building, deploying or scaling the application on production. Everything can be configured in a way that these processes are handled automatically. Furthermore, thanks to the fact that boring common tasks are automated both the business owner and the DevOps team member can focus on their major responsibilites. Give it a try!

Conclusion

To sum up, I hope you already made your decision to move to a DevOps culture or found some information that could help you improve your existing one. All benefits and advantages that it brings make the change worth it. Please leave your comments about what is your view about the topic, we would really want to hear you thoughts!

Never miss an update by following us and subscribing to our monthly newsletter!

Summary
DevOps: why should I bother and what do I need to start?
Article Name
DevOps: why should I bother and what do I need to start?
Description
DevOps has already taken the IT industry by storm. More and more companies are leveraging it's advantages. Find out how to try it!
Author
Publisher Name
Atos Consulting
Publisher Logo

6 thoughts on “DevOps: why should I bother and what do I need to start?

  1. Andrea
    Andrea Reply

    Cool article Pawel, I wonder how DevOps would apply to companies that currently outsource operations and do development in house?

    • Pawel Kozikowski
      Pawel Kozikowski Post authorReply

      As DevOps is all about the culture and breaking walls between teams it might be hard to incorporate it in an environment when part of the job is done outside, but not impossible. In the DevOps setup development team also gets involved in the operation tasks with the right processes and mindset on both sides it could work!

  2. Thibaut Reply

    Thanks for the article.
    What’s the Devops adoption rate across the banking industry – organizations of all size ?

  3. Pingback: DevOps: There is more then only technology

  4. Pingback: From Library to Vulnerability: Dependency Security Vulnerabilities Exposure - Atos Consulting CH

Leave a Reply

Your email address will not be published. Required fields are marked *