The devops is a culture that is similar to the Agile culture but it is also a very popular job description at the moment. Let see in this article what concretely defines a devops engineer.
An important job in the company
The engineer devops whether he is internally or consultant is an important role in the companies that want to go to a culture devops.
However, companies must also have an Agile coach and devops to help teams to understand this new corporate culture that is not so easy to grab.
This devops engineer will have to be able to work with teams that have different priorities and will have to have a good technical level.
Here is an image that illustrates his place:
Skill to become a devops engineer?
It’s difficult today to find schools and training to become a real devops engineer but fortunately we start to find. Companies with investment funds can eventually use coaches like me to train their system administrators to become the future devops engineers.
A devops engineer must be a very good communicator because he will be regulary in contact with all the technical teams of the company. In order to understand and be able to implement this entire application chain (delivery or continuous deployment), it is imperative that he is in permanent contact with all these teams.
So if someone want to have a position of engineer devops, he must have a good communication?
This person will also have to have good technical skills on different platforms: a system administrator who knows how to develop or a web architect are ideal candidates to go to devops engineering positions.
Master the platforms
A devops engineer needs to have good knowledge of cloud services such as AWS, Google Cloud or Azure. He will know the tariff lines and the different interfaces proposed to master the cloud architecture.
These cloud worlds are not easy to understand at first, but with a lot of reading and testing, the engineer starts to master these environments quite far from the traditional hosts.
The cloud is essential to the devops because it allows to be much more efficient on the aspects of continuous delivery, continuous deployment and are scalable.
The devops engineer must have good technical skills. It is advised to know how to program in order to be able to create scripts when needed. And, his development skills will allow him to better understand the developers with whom he will be in regular contact.
He will also need to have solid knowledge in versioning and revision tools like Git, Apache Subversion and Perforce. In general he will also know many tools that can help automate deployments: Docker, Vagrant, Chef or Puppet; the arrival of Docker and tools like Kubernetes no longer imposes a mastery of the last 3 tools mentioned.
He must also have good knowledge in the servers whether in their management or on the hardware aspects in order to be able to manage the development environments.
It is also important that the devops engineer is able to measure different levels of performance of his architectures and monitor them well; he must have knowledge in supervision tools such as Nagios, Zabbix, Sensu, Amazon CloudWatch, Splunk or New Relic.
As I said, the devops engineer will have to be a good communicator because he will have to make accept this new organization at everybody; if in some contexts everything are going well, there is a lot of place where people are very resistant to change.
To fully understand the issues of operational teams and development teams, he will be in the obligation to listen and regularly communicate with everybody. The slightest change he applies should not have a negative impact and to avoid this, only communication is necessary.
Conclusion devops engineer
Now that you better understand what a devops engineer is, you can work your skills to go on these kinds of positions; we can find some training on the subject if needed.