What is DevOps and How Do I Start?

What is DevOps and How Do I Start?

scotty profile picture

Scotty Parlor

Sept. 27, 2020

Read Time 3 min

If you are here, you may be wondering,

What is DevOps?

Instead of spitting out a definition, let's first understand the problem.

As you may have been able to deduce, DevOps is a combination of "Development" and "Operations". If you are new to the web/software industry, you may or may not have an understanding of the tension between these two parts of the modern organization.

Gene Kim, Jez Humble, Patrick Debois, and John Willis outline this well in their book The DevOps Handbook: How to Create World-Class Agility, Reliability, & Security in Technology Organizations

When talking about one problem, technical debt, the author's have the following to say:

"One factor that contributes to this is the often competing goals of Development and IT Operations. IT organizations are responsible for many things. Among them are the two following goals., which must be pursued simultaneously:

 

  • Respond to the rapidly changing competitive landscape
  • Provide stable, reliable, and secure service to the customer"

 

They further explain that Dev's often take on the response to the rapidly changing technology while Ops take on reliability, scalability, and resiliency.

There are so many books, blogs, and opinions of DevOps and how it should be properly operated, but I would describe it like this.

DevOps is the practice and strategy that methodically combines Development and Operations to limit bottlenecks, increase productivity, and advance the technology of an organization with reliability, security, resiliency and scalability and a steady efficient pace.

Take a look at this graphic from Atlassian (similar graphics can be found by doing a basic google search). It shows what I and many others believe the flow of work should be in a DevOps culture.

 

 

 

Photo by Atlassian

 

Here we can see the foundational 'infinite' flow of how technological organizations should operate:

Plan -> Build -> CI/CD -> Monitoring -> Operate -> Continuous Feedback -> Plan

 

I want to get into a DevOps Career! Where do I start?

If you want to get into DevOps, this is a great time to start. At the time of writing (during Covid, mind you) glassdoor suggests there are over 24,000 open jobs (many remote) and the average national base starting salary (of a non senior engineer!) is over $99,000 USD / per year. That doesn't even account for what you could make as a contractor, which is often much higher in pay, with little to no benefits.

 

What DevOps Tools & Skills are Recruiters looking for?

  1. Infrastructure As Code with HashiCorp Terraform - I included a brief terraform usage in Learning DevOps: Aws, Terraform, Ansible, Jenkins, and Docker
  2. Source Code Management (GitHub)
  3. CI/CD Pipeline - Jenkins, Azure DevOps, GitLab, etc.
  4. Server configuration tools - Ansible, Chef, Puppet, etc.
  5. Cloud Providers - AWS, Azure, Google Cloud, Oracle, etc.

There are many others, but these ones are hot right now.

Click here to SUBSCRIBE and start learning for free!

Other great resources can be found at:

Azure DevOps Resources

Katacoda

Best wishes as you consider a new career in DevOps!