In big enterprises, software deployment tends to reside in the hands of high-level IT pros who manage the IT infrastructure, but the build out of software is in the hands of a code-focused team, working in a staging environment. Developers make the software; and IT operations put it into use. With the increased need for companies to get their solutions built and released quickly, as well as managed effectively and securely, some businesses have begun to see inefficiencies in this traditional division of tech labor.
This has led to a new methodology with a name you’ve probably heard: DevOps. DevOps (literally) combines development and operations and is a new set of tools and best practices for handling the full software development life cycle. As it grows in popularity and prominence, IT pros may be wondering what DevOps means and how it will impact the skills they need.
How DevOps Works
Collaboration and automation are the two big factors that differentiate DevOps from other organizational structures for teams that create and deploy software. Rather than programmers and IT operations working independently, in a DevOps environment, they work together, even going so far as to understand the full software development workflow beyond just their responsibilities. Because of this, teams can be based around projects, rather than skill sets.
DevOps teams use specific sets of tools created to improve communication and automate otherwise laborious parts of the process throughout the build out, deployment and monitoring/upkeep of the software.
Why DevOps Is Important
In situations where coders and system admins operate in completely different areas with limited contact, it’s not hard to imagine how things could go awry. If an app gets coded and passed over to a deployment team before any issues within the code are addressed, it could hold up the project, especially if a deployment team is unfamiliar with the ins and outs of how the program is built.
Even if they immediately notice something is off, diagnosing the issue could set the project behind schedule. As could responding to bug reports from clients farther down the line. In these situations, DevOps would be a single team that could take care of anything that could possibly go wrong rather than having two separate teams work on a problem and risk miscommunication.
Cybersecurity is another emerging area where DevOps can come in handy. If a program is coded without security in mind, a threat actor could easily compromise properly secured infrastructure.
Having team-wide knowledge about how a network could be compromised — both via hardware and software — theoretically provides a stronger position for protecting both infrastructure and software against cyberattacks.
The Downside of DevOps
DevOps is not without its critics. Some question if the model may create inefficiencies in situations where people on either side of the development or operations team are pushed into an area where they lack skills and comprehension.
Others wonder if the trendiness of the term makes businesses more likely to impose an orthodoxy on tech teams in situations where there shouldn’t be one.
DevOps Best Practices
How to implement DevOps practices depends on any number of factors, including the following:
- Size of the organization
- Practices already in place
- Business relationships surrounding where and how software is deployed
- Whether or not it’s cloud based or requires on-premises installation on a customer’s server
Like any methodology that seeks to improve how people work and the tools they use — especially in emerging fields — the industry opinion on DevOps best practices may evolve and change over time.
With this in mind, the concept of “DevOps as Culture” has been growing in popularity. This means that DevOps is not treated as a rigid set of demands placed on individuals in particular job roles, but rather as a mindset, a more flexible set of practices in which development and operations understand each other’s roles, speak each other’s languages and collaborate when appropriate throughout the software development lifecycle to achieve the best result.
What DevOps Means for IT Pros
If you’ve been looking for IT jobs, you have probably noticed job titles like DevOps engineer. You may be wondering what skills are required and if there are new skills you need to learn to become one. It’s most important to remember that in this context, DevOps is a methodology for streamlining software development and deployment, often using sets of tools that span the software development life cycle, rather than a hard and fast skill set.
That said, as organizations continue to explore DevOps to create, secure and maintain software more effectively, becoming familiar with coding and software development best practices can only be a good thing for IT pros who want to move from traditional networking and systems roles into DevOps.
In fact, some of CompTIA’s higher-level cybersecurity certifications like CompTIA PenTest+, CompTIA Cybersecurity Analyst (CySA+) and CompTIA Advanced Security Practitioner (CASP+) have begun to include more software-related objectives, not just as they pertain to using tools to monitor IT infrastructure, but also to identify and fix vulnerabilities in software.
What Should You Do About DevOps?
At its heart, DevOps is about breaking down silos, so for the IT pro who wants to be versatile, effective and flexible, knowing how to code can put them in a stronger position — both in the job market and eventually in the workplace.
Just as it has become increasingly important for higher-level IT pros to be able to communicate business needs to business leaders, communicating and collaborating with coders could help an employee move up the IT ranks as DevOps continues to evolve.
This doesn’t mean that in the future IT pros will be all be expected to code and all coders need to understand IT infrastructure. What it does mean is that learning new skills and gaining knowledge to better collaborate and see a project all the way through from start to finish will give an advantage to anyone working in tech, whether the framework is called DevOps or something else entirely.
Ready to upgrade your IT skills? We've got great news! You can save big on CompTIA certifications and training right now.
Matthew Stern is a freelance writer based in Chicago who covers information technology, retail and various other topics and industries.