DevOps is fast becoming the accepted way of delivering features, fixes and updates on a regular basis.
But what exactly is it? Well the Dev part is development and the Ops part is operations. Essentially, it's speeding up the process of deploying a piece of software to a system. Making it more automated and making us more lazy.
Before we talk about them, that's refresh on what is meant by "the cloud". The term "cloud" means that your application is available on many powerful internet-connected computers spread around the world. With it available on many different computers, it can do all the hard work so the user's computer doesn't have to.
Some of the biggest public cloud service providers include Amazon Web Services (AWS), Microsoft Azure, IBM and Google Cloud Platform
The mention of Microsoft Azure is apparent as they provide DevOps services. But the one I've worked with is from Atlassian. Here are some of the web-based tools that I've used as part of the DevOps process:
- Jira is project tracking software that can be used by software teams to find out the tasks in a particular sprint and the current status of the task
- Bitbucket is a version control repository service, and is used for Git revision control systems
- Bamboo allows for continuous deployment of an application. You can checkout your Git repository from BitBucket, run your test plans, set off Powershell scripts, and even deploy your application to a cloud service.
I believe Microsoft Azure provide very similar tools to Atlassian, but to date, I've never tried them.
Some of the advantages of using DevOps is that it really speeds up the whole deployment process. No need to manually create a deployment package, and remote onto the server where it needs to be deployed, all this can be done by one click of a mouse.
It is time consuming setting up a DevOps process and it's not going to happen over night. But companies are seeing the long-term benefits and creating DevOps career positions for people in the know.
It is a game changer for software development.