Recently Aater Suleman, Flux7’s CEO, presented an “An Introduction to DevOps with AWS: How to Design, Deploy, and Manage a DevOps Workflow in AWS” as part of the O’Reilly live, online training series. In it, he was asked this pivotal question from one of the attendees: What future-looking skills should sysadmins have to ensure long-term competitiveness in DevOps environments and we thought we’d share his answer here with you today.
The Environment is Evolving
As we’ve outlined in our patent-pending Enterprise DevOps Framework (EDF), the traditional IT model is changing. Formerly, IT operations teams were in charge of all service agnostic components, such as the data center and networking, as well as service-specific components. All application dependencies fell under the purview of IT operations.
Conversely, in a DevOps methodology, IT operations is converted into a concept called the landing zone. The landing zone is where services deploy and as a result is focused on catching service agnostic components as they are delivered via pipelines. With this change, service teams now own more of their dependencies.
Given these changes, in his presentation Mr. Suleman highlighted seven skills sysadmins should acquire to remain relevant in DevOps environments and be a successful part of a DevOps team:
- Gain an intimate understanding of new age platforms like AWS and Azure. Sysadmins with a working knowledge of these platforms are in short supply and high demand. According to research by Rackspace, jobs related to AWS went up 53% in 2016 and job postings for Microsoft Azure experience increased 75%.
- Become fluent in at least one programming language. While some have said, if you can't code, you can't be in IT, that’s not fully accurate. Indeed, you don't have to be a web developer, but sysadmins should be able to write scripts if they want to remain relevant. IT Ops and Development create templates in the cloud and it’s a critical skill to be able to check the validity of templates -- and in order to do so, you need to write code as it can’t be done manually.
- Know a general purpose language such as python. This enables sysadmins to automate their day to day mundane tasks.
- Get fluent with domain-specific languages. Expertise in infrastructure as code solutions like AWS CloudFormation and HashiCorp Terraform that facilitate infrastructure as code and/or server configuration tools like Chef, Puppet, Ansible or Salt should be a top priority. This enables sysadmins to codify infrastructure and configurations, a must-have for an efficient DevOps team.
- Gain a working knowledge of orchestration solutions like Jenkins or AWS CodeBuild. In conjunction with cloud services, orchestration and automation tools like these are often the solutions that facilitate much of the automation that is the backbone of effective DevOps initiatives.
- Acquire skills that help facilitate the concept of injectors -- we define injectors in the EDF as solutions that insert information specific to applications landing in the landing zone. (e.g. passing along a subnet ID.) Tools that commonly assist in this task are secret management solutions like HashiCorp Vault or Amazon EC2 Systems Manager (SSM).
- Secure a working knowledge of the most popular version control systems like GitHub or BitBucket.
At Flux7, we have adopted an Assess, Attune and Engage approach, with Engage based on a teach to fish methodology where we proactively work with our customers to teach them the skills they need today -- and into the future -- to effectively and efficiently manage their new platform and supporting tools, like Ansible, Jenkins and Vault. As part of the overall, hands-on mix as the project progresses, customers are able to gain and retain more knowledge and are able to acquire skills that will benefit themselves and the organization well into the future.
As Mr. Suleman explained in a recent Forbes article, although different organizations define DevOps in different ways, the end result is typically either developer-friendly operations or DevOps as a single consolidated team. In either case, DevOps clearly changes expectations of sysadmins, and it’s important that they have the skills to meet these new demands.
As with our approach to client projects, we hope that you’ve found this list to be both strategic and actionable, supporting the overall DevOps model with skills in each area that is critical to success. If you are interested in assessment of how DevOps can support your business goals, contact us today for your own Enterprise DevOps Framework. Or, get started by downloading our DevOps Adoption paper.