Are you worried that automation will replace people at work? That may be true, but it’s not a bad thing.
Image by : opensource.com
It’s a legitimate worry: Will DevOps eventually put you out of a job? After all, DevOps means developers do the operations, right? DevOps is automated. What would I do if my job was automated? Does the practice of continuous distribution and containerization mean that operations are obsolete? To DevOps, everything is code: infrastructure is code, tests are code, this and that are code. What if I don’t have those skills?
DevOps is a coming change that will upend the field, and the fanatical crowd is talking about using three ways to change the world — the three foundations of DevOps — to upend an old world. It is unstoppable. So, will DevOps put me out of a job?
The first worry: I’m not needed anymore
Since developers manage the entire application lifecycle, DevOps is easy to embrace. Containerization may be an important factor influencing this idea. When containerization is rolled out in a variety of scenarios, they are touted as a one-stop solution for developers to build, test, and deploy their code. What does DevOps do for operations, testing, and QA teams?
This stems from a misunderstanding of DevOps principles. The first principle of DevOps, or the first approach, is Systems Thinking, or the emphasis on a holistic approach to management and understanding the entire life cycle of an application or service. This does not mean that application developers will learn and manage the entire process. Instead, it is people with various specialties and skills who work together to ensure success. Making developers fully responsible for this process almost puts developers in opposition to users — essentially “putting all eggs in one basket.”
There is a special position reserved for you in DevOps. It would be a waste to use a conventionally-educated software engineer with linear regression and binary lookup knowledge to write Ansible Playbooks and Docker files. System administrators with advanced skills, who know how to secure a system and optimize database execution, are wasted writing CSS and designing user flows. Effective teams that write code, test, and maintain applications are typically a mix of interdisciplinary, cross-functional people with different expertise and backgrounds.
Second worry: my job will be automated
DevOps may or may not be synonymous with automation at times. When automated builds, tests, deployments, monitoring, and alerts take up the entire application lifecycle management, what does that leave us? This focus on automation may have something to do with a second approach: Amplify Feedback Loops. The second approach to DevOps is to prioritize rapid feedback in the opposite direction between the team and the deployed application — from monitoring and maintaining deployment, testing, development, and so on, by emphasizing that feedback is important and actionable. While this second approach is not particularly relevant to automation, many automation tool teams use it in their deployment pipelines to facilitate quick reminders and quick actions, or to improve based on feedback generated in the business of supporting users. Traditional practices have been done by people, which is understandable why automation might lead to anxiety that some people will lose their jobs in the future.
Automation is just a tool, it doesn’t replace people. Smart people use it to do repetitive work, and instead of exploiting intellectual and creative riches, pressing the red “George Jetson” button is a colossal waste. Automating the drudgery of the day means more time to tackle real problems and innovative solutions on the horizon. Humans need to solve more “how and why” problems, while computers can only deal with “copy and paste”.
Automation is not limited to repeatable, predictable things; it frees up the team’s time and energy to focus on higher-level tasks in the domain. Instead of spending their time configuring alarms or managing traditional configurations, monitoring teams may focus on predicting possible alarms, correlation statistics, and designing possible scenarios. Freed from planning patches or server configurations, system administrators can spend more time focusing on overall administration, performance, and scalability. Unlike the complete absence of people on factory floors and assembly lines, automated tasks in DevOps mean that people focus more on creative, higher-value tasks than on repetitive, mind-numbing drudges.
Third worry: What if I don’t have these skills
“How am I going to keep doing this? I don’t know how to automate. Now it’s all code — I’m not a developer, I’m not going to do DevOps code. “The third worry is a fear of diffidence. As the culture changes, yes, the team will demand changes as well, and some may be concerned that they lack the skills to continue to do their jobs.
Most people, however, are probably closer than they think. What a Dockerfile is, or what like Puppet or Ansible configuration management is, is the environment as code, and system administrators have written shell scripts and Python programs to handle their repetitive tasks. Learn more and use existing tools to tackle more of their problems — choreography, deployment, maintenance is code — especially when freeing yourself from heavy manual tasks and focusing on growth.
The third way to answer this concern among DevOps users is to start with A Culture of Experimentation and Learning. The ability to try, fail, and learn from mistakes rather than blame them is an important factor in devising more creative solutions. The third approach is to empower the first two — allowing problems to be quickly detected and fixed, and for developers to be free to try and learn, as well as other teams. Operations teams that have never used configuration management or written automated provisioning infrastructure programs should also be free to try and learn. Test and QA teams also have the freedom to implement new test pipelines and automatically approve and release new processes. In a culture that embraces learning and growth, everyone is free to acquire the skills they need to enjoy the success and joy that work brings.
conclusion
In an industry, any practice or change that could cause disruption creates fear and uncertainty, and DevOps is no exception. Worrying about your job is a legitimate response to hundreds of articles and speeches outlining countless practices and technologies that are empowering developers to take responsibility for every aspect of the industry.
In fact, however, DevOps is “an interdisciplinary communication practice dedicated to the study of building, evolving, and operating rapidly changing resilient systems.” DevOps means the end of silos, but not specialization. It’s an automated system commissioned to do the dirty work, freeing you to do what humans are better at doing: think and imagine. And, if you’re willing to learn and grow, it won’t end your opportunities to solve new and challenging problems.
Will DevOps put you out of a job? Yes, but it also gives you a better job.
Via: opensource.com/article/17/…
By Chris Collins
LCTT
Linux China