As the end of the year is approaching, a large number of siege lions and programmers are already ready to start their job hopping and salary increase. Although affected by the general situation of the society, although the IT industry cannot compare with the momentum of rapid development in the past few years, the popularity of
DevOps is Without increasing, the penetration rate of the engineering efficiency team is growing rapidly, and the demand for DevOps engineers is also increasing exponentially. The transition to becoming a DevOps engineer and DevOps coach has gradually become a fashion in the IT circle. So how to stand out among a large number of DevOps engineers, break the gap between development and operation and maintenance, and become the leading DevOps expert in the team?
First of all, there is no junior engineer's argument in DevOps. As long as you understand this field, you will know that requirements, development, build, test, security, release, deployment, etc. are all necessary capabilities for
DevOps engineers. For this reason, we look at all recruitment software. In the recruitment of DevOps engineers, JD requires candidates to understand git, jenkins, sonarqube, ansible, zabbix, docker, k8s, saltstack, java, python, shell, nginx, F5, mysql, redis, etc. If all these tools and languages are understood, it is difficult for junior engineers to do so. So once you have entered this field, you have become a senior engineer and have enough ability to hold the above open source tools and languages. These are the hard strengths that DevOps engineers should have. If you feel that you have no room for improvement in the field of
DevOps, please open the recruitment software and look at the needs of a job, you will naturally know the skills you lack.
DevOps engineers only have the above skill points to perfectly match their responsibilities. Why do we only talk about the industry leaders at the operation and maintenance summit every time, but we can only sit in the work station to configure ansible and write pipeline? Therefore, technology alone cannot become a DevOps expert. Tools and language are only used to solve problems. To this end, we also need to have the following soft skills to break through the bottleneck or improve personal capabilities:
1. Agile and project management capabilities
DevOps and Agile are inextricably linked. In order to achieve the primary goals of DevOps: enhancing customer experience, improving innovation capabilities, and achieving value faster, then as a DevOps engineer, do you understand customer needs, product goals, and users? Experience, development direction of the industry, etc.? If you do not understand, please go to the daily stand of the business group. You can learn through the website how the requirements are dismantled, why the iteration cycle is designed to be biweekly, the release frequency, and the functional usage groups. Only with this accumulation of experience can we develop a
DevOps platform that better meets business needs, and business departments can also safely run the entire continuous delivery process on the platform you develop. A better approach is that DevOps engineers can lead the business team to practice agile, combine the development platform, design the best project management and agile solutions, and implement the solutions into actual projects, and finally land through the delivery pipeline to achieve real DevOps continuous delivery.
2. Technical preaching ability
As a DevOps engineer, whether it has landed on some powerful tool chains or introduced cutting-edge development concepts, if no one uses it, it is still worthless.
Technical sermons are closer to marketing in nature and closer to technology in terms of behavioral details. The primary job of DevOps engineers is to select the technology and tool chain. Choosing a more technical solution and architecture that is more suitable for business development is not a little bit of an improvement in engineering efficiency, so sensitivity to new technologies is a core skill of DevOps engineers. It is impossible to
practice DevOps without blindly adapting to the past development model without trying to change it. Therefore, it is the responsibility of DevOps engineers to promote new development models and cutting-edge technology concepts throughout the organization. In addition to the work of tool chain maintenance and DevOps platform development, do a good job of technical promotion, write technical articles, handle the relationship with the development team operation and maintenance team, and give users a good experience and goals. DevOps transformation will naturally get Team support.
3. Cost control ability (ability to make money and spend money)
Standing on the shoulders of giants, we can see further, so we used a lot of open source tools during the DevOps construction process to avoid making our own wheels. However, open source tools require maintenance costs and secondary development, and stability and security are great challenges in our use. The cost of a
DevOps engineer including social security, provident fund, salary, bonus, etc. will not be less than 500K in a year, but commercial software that can be purchased at 500K is indeed abound. If you buy a commercial software at the cost of an engineer for a year, you can save the maintenance and secondary development time of the three engineers, and improve the stability and ease of use of the product. Isn't this sale worthwhile? It is not fragrant to use the saved money to give bonuses to engineers (of course, the saved money will also not hit the employee's salary card).
Therefore, not all who use open source to save money, the most expensive people in this era are talents! Therefore, DevOps engineers must have the thinking of cost control. Whether in hardware or software selection, they must be careful. After all, the DevOps team is a team that spends money. The money spent must produce value, although the business value is not easy to evaluate. We can evaluate the cost savings to reflect the importance of DevOps.
4. PPT
PPT has always been a pain for programmers, and even once had some interesting voices. For example, at a company's annual meeting, PPT complained about it. If PPT is done well, it will disguise that the employee has no actual ability, and can only rely on the wonderful report of PPT Can be promoted, so there is a saying that "you can't do a PPT with exhausting work". This kind of voice is wrong. PPT is the essence of DOC documents. Generally, most of the time you show the key points you want to express through graphics, charts and other methods. No expert is holding a github address to share how the code is cleverly conceived and the logic is wonderful. ppt is a medium for people-to-people communication. DevOps engineers can help other developers understand the development concepts you promote through the attractive PPT, and accept a unified continuous integration tool chain.
5. Speech ability
In summary, with project management capabilities, agility, sensitivity to new technologies, technical evangelism capabilities, PPT capabilities, and then the ability to speak. Why do you need speaking ability? Developers, testers, and operation and maintenance personnel in the company are all equivalent to your customers. Demonstrating your
DevOps platform to customers and introducing cutting-edge DevOps concepts all require platforms. This is the most common scenario that reflects the ability to speak. . Therefore, DevOps engineers must not only know that they are staring at the screen, and only by strengthening communication with other teams can they slowly eliminate the mistrust between each other and eliminate the gap between operations and development. It is not just technology that promotes DevOps, culture is still a key link.
DevOps is an integration of development and operation and maintenance, and is also a collection of tools and culture. As an excellent DevOps engineer, having comprehensive technical capabilities is the foundation, and the accumulation of its own soft skills is the deciding factor.