Vladimir Kuptsov, Sr. Director, Infrastructure, HMSHost
You've probably heard about DevOps, a new trend in IT with great demand and high salaries. About what it is and who needs to understand this philosophy, let's talk further. First time I heard the term “DevOps” was relatively recent—in 2009, thanks to a series of conferences dedicated to software development, and my engineering position in one of Australian online marketing companies. In those days DevOps was more related to a combination of system administrators and developers discussions with agile framework. Also, the company had decided to bring me as a lead of a new department.
The main task for me, as a Head of Department of DevOps, was to increase the speed of development, release and correction of software errors. Based on my Developer University degree, I understood such ideological slogans before 2009. In particular, agile refers to the same thing, but it involves more theory, while DevOps is a set of tools and concepts that need to be implemented.
Based on a few real projects, I can definitely say that DevOps is not a tool. There is no universal software that could force system administrators, testers and developers to work closely together. All this is due to the standards of the organization, internal services aimed at communication, control and file sharing. DevOps tools include version control systems, programs for monitoring the product's life cycle—in general, everything that in one way or another allows you to monitor business records in real time.
Also, DevOps is not a profession. Today, you can find a lot of DevOps roles or skill sets that software companies are trying to find. DevOps-specialist is a kind of a system administrator who very much wants to make software programming code modification. His responsibilities include monitoring and coordinating all stages of product promotion—from planning to customer use. In doing so, it acts as a "buffer," the link between the stages. Of course, for this he must have knowledge in each of the professions. It turns out that a man and a ship. In fact, the only way to become a DevOps specialist is to know the general concept, a couple of programming languages and interest to do more. This is an ideal role for the people like me, with computer programming education and little development skills but with extensive experience in IT infrastructure.
What I leaned across multiple projects and departments setup is that DevOps will touch everyone in your IT organization. The evolution of software development goes to minimizing the time between the planning, release and modification stages. Eventually, traditional practices will not be able to compete with products that have a permanent effective feedback. Accordingly, large companies have already adopted the concept of DevOps, and small companies are looking for the opportunities to do so, with minimal financial and organizational changes. So, if you want to be part of IT, it's likely that you'll soon have to get to know DevOps.
In addition, there is a very good book from O'Reilly–“What is DevOps.” Here, the formal language describes all the concepts and steps for implementing DevOps in your head and in the company.