You are here

You are here

The state of DevOps education: Can training keep up with the tech?

Tony Bradley Editor-in-Chief,

IT education has been a problem since the dawn of IT. Things change quickly in the world of technology, and it's difficult for institutionalized education to keep up. By the time a college-level course is developed and the associated textbook has been written, edited, and published, much of the information is already obsolete. Now that we've entered the era of DevOps, that rate of change has reached hyper speed and doesn't look like it will slow down any time soon.

A recent article described the ongoing struggle companies face to find the right skills and talent. The article cites a study from CA Technologies that highlights some of the challenges, including a growing skills gap in the apps economy as organizations shift to a software-driven mindset. The article sums it up: "Ultimately, the lack of skilled—or available—workers is fueling company concerns. According to the CA Technologies survey, 42 [percent] of respondents said that the lack of knowledge or requisite skills prevented them from effective responses within the app economy, with 52 [percent] saying that governmental assistance or investment in technical or STEM education could go a long way to closing the gap."

Have schools and programs evolved to deliver a workforce with the skills to fit the modern dev and IT operations in practice in today's enterprise? Can higher learning adapt to keep up and continue to provide value, or will the burden fall on smaller, industry-specific courses and certifications? Should students should just get in the trenches and teach themselves because formal education is just incapable of staying current? All of these questions have some validity. Let's take a look at the pros and cons of each.

Formal education: Is computer science keeping up?

Formal computer courses have been out of date pretty much since there have been computers. By the time my school introduced an introductory course teaching BASIC on Apple II PCs, I had already taught myself BASIC on a Commodore 64 and ended up educating the teacher more than he educated me. It can take years to develop and approve a formal high school or college level course—and by that time the information is already out of date and the world has moved on to new things.

That said, there are still a number of advantages to formal education. "We can all make jokes about how slow the traditional educational system can be to change, but in terms of sheer resources it dwarfs the commercial training sector, and traditional undergraduate and graduate degrees still offer meaningful career value," claims Charles Betz, founder of Digital Management Academy and adjunct faculty at the University of St. Thomas. "I believe that students coming out of these programs can and should be much better prepared for [the] digital industry and that this is not a merely 'vocational' objective."

Betz notes that many companies are conducting mass layoffs, while simultaneously posting job openings for agile developers and complaining that there just aren't enough skilled workers available. He points out that when the companies that are hiring the graduating students send signals like these, the deans and provosts take notice and make an effort to implement change to address the need.

"I honestly don't see enough programs out there teaching the latest. Most of the programs that are in the institutions are teaching IT Ops as it existed back in the early 2000s," declared TK Keanini, CTO of Lancope.

Andrew Storms, VP of security service at New Context, agrees that formal education has value, but he also stresses that the value may not be in the hot technology or programming language du jour. He explained that educational institutions attempt to prepare job applicants for the real world by adapting the syllabus and degree requirements to coincide with the needs of the workplace, but they often remain woefully behind the times.

He told me, though, that some of the most useful classes he took in college weren't domain specific. Foundational classes such as algorithms and data structures provide a comprehensive base that can generally be applied regardless of how technology evolves: "If education wants to make an impact on their students for the workplace, then focus less on language specific skills and more on foundational knowledge. Furthermore, let us not forget the value of information security and how the defensible mindset should be part of everything we do," Storms said.

IT training and certification: Worth the investment?

When it comes to most domains across IT, industry training and certification programs substitute or augment formal education. Microsoft's MCSE, Cisco's CCIE, and ISC2's CISSP certifications all stand out as more or less de facto standards for their respective fields. Regardless of your formal education—or lack thereof—these certifications are often required to get in the door for many jobs.

DevOps is a relatively new concept, but there are dedicated training programs out there already, such as the DevOps Training program at the Linux Academy. The DevOps Institute website explains:

DevOps as a movement has flourished over the last 4 or 5 years in spite of or perhaps because it has defied precise definition. There is no manifesto or similar treatise that lays out the immutable facts of DevOps. In fact the community has coalesced around a Wikipedia article as a non-definitive, definitive definition. However, DevOps does not exist in a vacuum. The founders of the DevOps Institute believe that for DevOps to reach its true potential best practices will have to be codified. Training based on these best practices will lead to better and consistent results. Enterprises will demand that DevOps training develop in line with traditional IT training including certifications evidencing proficiency.

"The definition of DevOps as a whole has only recently began to normalize. The previous lack of consensus on what DevOps "is" has made it difficult to quantify and package as formal training," concurs Brian Dawson, DevOps Evangelist for CloudBees.

Dawson notes that DevOps is more about "what" to achieve than "how" to achieve it. Because it's largely a cultural transformation of the traditional corporate hierarchy that happens to be supported by tools and technology, it doesn't necessarily lend itself well to fixed, packaged training like some other elements of IT might. "In the mid-term I see DevOps training taking the path of scrum training where there is certification for specific facilitating roles in DevOps like a Certified Scrum Trainer, who acts as an ongoing coach and mentor for specific implementations of agile."

The crux of the problem, according to Lancope's Keanini, is that DevOps is evolving faster than it can be institutionalized or put into formal training programs. The current state of DevOps training is similar to wanting to learn how to scale systems for the Internet back in the late 90s—you just had to be a self-learner and study whatever materials and resources were available as if every day was an exam.

When it comes to DevOps-specific training and certification, Keanini added, "At a high level, it stabilizes the semantics of the domain. This is important but we need to make sure we understand the value and not treat it as if it will do much more than that. The certifications do help in stabilizing the vocabulary of the practice, but beyond that, it is all about getting your hands really dirty and practice day in and day out."

Self-teaching: Trenches or bust?

That brings us to the roll-up-your-sleeves, trial-and-error, do-it-yourself approach to DevOps education. Even with formal education and DevOps-specific certifications, it's hard to argue with the value of just getting into the trenches and figuring it out for yourself. In fact, that bootstrap mentality is more or less a hallmark of DevOps and defines some of the early successes that kicked off the DevOps movement, such as the development of the Simian Army tools by Netflix.

Keanini declared, "DevOps is much more like a team sport or a band—while individuals can learn their instrument and their part, it is the team play and the day in and day out concerted efforts that makes DevOps successful. Infrastructure becomes the application and developers never lose ownership of the code or the connection to the end user."

CloudBees' Dawson believes that DevOps training as it predominantly exists today is the domain of vendors and consultants. Much of the packaged training is proprietary or largely focuses on specific tools and technology components of DevOps, rather than providing a comprehensive education in DevOps.

Between the rapid pace of evolution within DevOps and the lack of options for a broad, foundational education in DevOps, IT professionals are left with little choice in many cases but to simply figure it out.

Reality check

In the early days of computers, the local user group was arguably the best place you could go to get answers and learn about the technology, and that seems to be true to some extent when it comes to DevOps today.

Betz leads an Agile Study Group in Minnesota. The group has defined a number of premises that contrast the old mentality versus the new approach the group strives to deliver. One of the old premises is the one that this article began with: technology is simply moving too fast, and education continually struggles to keep up and stay relevant. The new premise the group professes states, "There is a new high value, well-grounded, stable pedagogical core we can identify, that can be translated at different levels for students of various interests and abilities. We do not need to resign ourselves to merely providing fashion-driven vocational training."

It's hard to learn something that seems to evolve as quickly as the lessons are taught. In the end, though, it seems that each of these forms of education plays a part when it comes to IT and DevOps.

As Andrew Storms pointed out, a formal education provides a solid foundation and teaches critical thinking and skills that extend beyond whatever programming language or technology is hot today. DevOps-specific training and IT certifications help organizations and individuals come to some consensus about the vocabulary of DevOps and the baseline skills candidates might be expected to have. Ultimately, though, self-teaching while working in the trenches provides valuable continuing education that keeps your skills honed and relevant. You might be able to succeed with any one of these types of education, but the easiest path to a successful career in DevOps will include a combination of all the above.

Keep learning

Read more articles about: Enterprise ITIT Ops