Friday, February 1, 2019

Tech Talk - DevOps

In today's fast-paced environment organizations are adopting new tools and practices that streamline the deployment of applications and services.  With this, a new concept has taken shape and is now in high demand within the technology community: DevOps.  In simple terms, DevOps bridges the gap between developers and their users.  Through the use of Agile methods, DevOps help deliver, maintain, and update hosted applications to adapt with changing workflows.

As more and more services are turning to cloud-based solutions, the demand for DevOps engineers will steadily increase.  According to a post on the website 'The Agile Admin', there are three main roles for a DevOps engineer:
  1. Infrastructure Automation
  2. Continuous Delivery
  3. Site Reliability Engineering
For example, a DevOps Engineer in my department would help with the creation of a new application - working closely with their primary customers and other developers - while also creating and configuring the systems that will host the new application.  Even after "go-live" for the applications, the the DevOps position is in charge of maintaining and updating the application and its hosted system to ensure security and functionality. 

Essentially, there are no pre-defined roles for a DevOps engineer.  They are usually developers who become interested in networking and and deployment operations, or they could be systems administrators who have an interest in scripting and programming.  According to Kelsey Hightower, an operations lead at Puppet, a major software configuration management tool,  “The DevOps engineer encapsulates depth of knowledge and years of hands-on experience,... this person blends the skills of the business analyst with the technical chops to build the solution..."

Questions:

1) Would you be interested in a DevOps position?

2) Whatever your position, how do you think Agile will tie into your daily functions during your career?