Hitch your IT career to a rising star with DevOps certification
Posted on
November 3, 2015
by
There's a lot of interest in DevOps in the IT world right now.

Savvy IT industry watchers have probably been noticing something called "DevOps" come gliding into view for a while now, striking regular pings on the scope of anyone scanning for either hot trends or spiking salaries. Even proponents of DevOps, however, sometimes struggle to define it in layman's terms, a challenge that anyone who has ever tried to explain development methods like Agile or Scrum to someone outside of IT will understand. Beneath the jargon, however, there's an important development model that is quickly gaining in popularity. If you're involved in IT, then this is something that's probably worth taking the time to understand.

What is DevOps?

DevOps is a compound of "development" and "operations." It's a software development method that stresses communication, collaboration, integration, automation, and measurement of cooperation between software developers and other information technology professionals. DevOps is often shown graphically as three overlapping circles consisting of Development, Quality Assurance, and Information Technology Operations, with DevOps being the area of overlap that ties all three circles together.

DevOps is so much more, however, than the intersection of three circles. It's often the intersection of five or ten circles — it just depends on the company that the DevOps is supporting. DevOps spans the entire delivery pipeline. This includes improved deployment frequency, which can lead to faster time to market, lower failure rate of new releases, shortened lead time between fixes, and faster mean time to recovery in the event of a new release crashing or otherwise disabling the current system. Simple processes become increasingly programmable and dynamic when using a DevOps approach, which aims to maximize the predictability, efficiency, security, and maintainability of operational processes. Automation often supports this objective.

DevOps integration targets product delivery, quality testing, feature development, and maintenance releases in order to improve reliability and security and provide faster development and deployment cycles. Many of the ideas (and people) involved in DevOps come from the enterprise systems management and agile software development movements.

DevOps aids in software application release management for an organization by standardizing development environments. Events can be more easily tracked as well as resolving documented process control and granular reporting issues. Companies with release/deployment automation problems usually have existing automation but want to more flexibly manage and drive this automation without needing to enter everything manually at the command-line.

Ideally, this automation can be invoked by non-operations employees in specific non-production environments. The DevOps approach grants developers more control of the environment, giving infrastructure more application-centric understanding.

The adoption of DevOps is being driven by factors such as:

  • Use of agile and other development processes and methodologies
  • Demand for an increased rate of production releases from application and business unit stakeholders
  • Wide availability of virtualized and cloud infrastructure from internal and external providers
  • Increased usage of data center automation and configuration management tools
  • Increased focus on test automation and continuous integration methods

According to David Geer, 42 percent of IT pros surveyed had adopted or planned to adopt DevOps development approaches (Information Week, 2014 DevOps Survey). That number ballooned to 66 percent of U.S. companies using DevOps approaches by the time of a Rackspace survey only 10 months later. With DevOps clearly taking over the coder's realm, most programmers will eventually have to yield to and master this mindset.

What does DevOps mean for a programmer's profession?

There's a lot of interest in DevOps in the IT world right now.

DevOps introduces developers to operational requirements and the tools and methods necessary to ensure that the code they create is immediately functional, of high quality, and fit for the production environment. With solid training in these tools and methods, developers should find their talents highly sellable in a career world that is increasingly favorable to DevOps practitioners.

Adam Gordon, CTO of New Horizon Computer Learning Centers of south Florida, sats that important developer skills for DevOps environments include automating configuration management (infrastructure lifecycle management) using vendor-neutral tools such as Puppet, Chef, Ansible, SaltStack, and Docker. These tools integrate with a host of popular platforms and software including Amazon EC2, Amazon Web Services, CFEngine, Cisco, Eucalyptus, Google Cloud Platform, IBM Bluemix, Jelastic, Jenkins, Linux (various distributions), Microsoft Azure, OpenStack, OpenSVC, Rackspace, Rightscale, Salt, SoftLayer, Vagrant, VMware, and a rapidly expanding number of examples.

Some of the most popular vendor-specific DevOps platforms include those from Microsoft and VMware, says Gordon. Microsoft's DevOps-related products include System Center with its System Center Configuration Manager (SCCM) and System Center Operations Manager (SCOM). These Microsoft developer tools enable functions such as automated configuration management, monitoring, and custom management pack development. VMware tools such as vCloud Air (vCloud Hybrid Service) bridge the VMware development platform to tools such as Puppet and Chef, according to Gordon, while the vRealize cloud management platform automates infrastructure and application delivery, monitoring, analytics, and management.

Finally, Red Hat Linux developers will find that learning to deploy this distribution can be useful for work in Red Hat-related DevOps environments.

Does everyone love DevOps?

No, not everyone. Take Jeff Knupp, for instance. In an April 2014 blog, Knupp claims that DevOps is "killing the developer." Allow me to quote directly from Mr. Knupp's post:

"There are two recent trends I really hate: DevOps and the notion of the ��full-stack' developer. The DevOps movement is so popular that I may as well say I hate the x86 architecture or monolithic kernels. But it's true: I can't stand it. The underlying cause of my pain? This fact: not every company is a start-up, though it appears that every company must act as though they were.

"DevOps is meant to denote a close collaboration and cross-pollination between what were previously purely development roles, purely operations roles, and purely QA roles. Because software needs to be released at an ever-increasing rate, the old "waterfall" develop-test-release cycle is seen as broken. Developers must also take responsibility for the quality of the testing and release environments.

"The increasing scope of responsibility of the "developer" (whether or not that term is even appropriate anymore is debatable) has given rise to a chimera-like job candidate: the "full-stack" developer. Such a developer is capable of doing the job of developer, QA team member, operations analyst, sysadmin, and DBA. Before you accuse me of hyperbole, go back and read that list again. Is there any role in the list whose duties you wouldn't expect a 'full-stack' developer to be well versed in?

"Where did these concepts come from? Start-ups, of course (and the Agile methodology). Start-ups are a peculiar beast and need to function in a very lean way to survive their first few years. I don't deny this. Unfortunately, we've taken the multiple technical roles that engineers at start-ups were forced to play due to lack of resources into a set of minimum qualifications for the role of developer."

"Imagine you're at a start-up with a development team of seven. You're one year into development of a web application that Xs all the Ys, and things are going well, though it's always a frantic scramble to keep everything going. If there's a particularly nasty issue that seems to require deep database knowledge, you don't have the liberty of saying, "That's not my specialty," and handing it off to a DBA team to investigate. Due to constrained resources, you're forced to take on the role of DBA and fix the issue yourself.

"Now expand that scenario across all the roles listed earlier. At any one time, a developer at a start-up may be acting as a developer, QA tester, deployment/operations analyst, sysadmin, or DBA. That's just the nature of the business, and some people thrive in that type of environment. Somewhere along the way, however, we tricked ourselves into thinking that because, at any one time, a start-up developer had to take on different roles, he or she should actually be all those things at once.

"If such people even exist, full-stack developers still wouldn't be used as they should. Rather than temporarily taking on a single role for a short period of time, then transitioning into the next role, they are meant to be performing all the roles, all the time. Most good developers can almost pull this off."

Certifications in DevOps

The DevOps certification realm is taking root quickly. One organization that is out in front of the pack, however, is Amazon Web Services. If you want to make a strong move into DevOps, then consider any of the following credentials.

AWS Certified DevOps Engineer �� Professional

Description

The AWS Certified DevOps Engineer - Professional exam validates technical expertise in provisioning, operating, and managing distributed application systems on the AWS platform. Exam concepts you should understand for this exam include the ability to:

  • Implement and manage continuous delivery systems and methodologies on AWS
  • Understand, implement, and automate security controls, governance processes, and compliance validation
  • Define and deploy monitoring, metrics, and logging systems on AWS
  • Implement systems that are highly available, scalable, and self-healing on the AWS platform
  • Design, manage, and maintain tools to automate operational processes

Prerequisites

Required Prerequisite: status as AWS Certified Developer - Associate or AWS Certified SysOps Administrator - Associate

Eligibility

  • Two or more years' experience in provisioning, operating, and managing AWS environments
  • Experience in developing code in at least one high-level programming language
  • Experience in automation and testing via scripting/programming
  • Understanding of agile and other development processes and methodologies

Exam

Multiple choice and multiple answer questions
170 minutes to complete the exam
Exam available in English
Exam registration fee is $300

DevOps is a hot trend in software development right now.

AWS Certified SysOps Administrator - Associate

Description

The AWS Certified SysOps Administrator - Associate exam validates technical expertise in deployment, management, and operations on the AWS platform. Exam concepts you should understand for this exam include:

  • Deploying, managing, and operating scalable, highly available, and fault tolerant systems on AWS
  • Migrating an existing on-premises application to AWS
  • Implementing and controlling the flow of data to and from AWS
  • Selecting the appropriate AWS service based on compute, data, or security requirements
  • Identifying appropriate use of AWS operational best practices
  • Estimating AWS usage costs and identifying operational cost control mechanisms

Prerequisites

No prerequisites; recommend taking System Operations on AWS

Eligibility

  • One or more years of hands-on experience in operating AWS-based applications
  • Experience in provisioning, operating, and maintaining systems running on AWS
  • Ability to identify and gather requirements to define a solution to be built and operated on AWS
  • Capabilities to provide AWS operations and deployment guidance and best practices throughout the lifecycle of a project

Exam

Multiple choice and multiple answer questions
80 minutes to complete the exam
Available in English, Japanese, Simplified Chinese, and Brazilian Portuguese
Practice Exam Registration fee is $20
Exam Registration fee is $150

AWS Certified Developer - Associate

Description

The AWS Certified Developer - Associate exam validates technical expertise in developing and maintaining applications on the AWS platform. Exam concepts you should understand for this exam include:

  • Picking the right AWS services for the application
  • Leveraging AWS SDKs to interact with AWS services from your application
  • Writing code that optimizes performance of AWS services used by your application
  • Code-level application security (IAM roles, credentials, encryption, etc.)

Prerequisites

No prerequisites; recommend taking Developing on AWS

Eligibility

  • One or more years of hands-on experience in designing and maintaining an AWS-based application
  • In-depth knowledge of at least one high-level programming language
  • Understanding of core AWS services, uses, and basic architecture best practices
  • Proficiency in designing, developing, and deploying cloud-based solutions using AWS
  • Experience with developing and maintaining applications written for Amazon Simple Storage Service, Amazon DynamoDB, Amazon Simple Queue Service, Amazon Simple Notification Service, Amazon Simple Workflow Service, AWS Elastic Beanstalk, and AWS Cloud Formation.

Exam

Multiple choice and multiple answer questions
80 minutes to complete the exam
Available in English, Simplified Chinese, and Japanese
Practice Exam Registration fee is $20
Exam Registration fee is $150

AWS Certified Solutions Architect - Professional

Description

The AWS Certified Solutions Architect - Professional exam validates advanced technical skills and experience in designing distributed applications and systems on the AWS platform. Example concepts you should understand for this exam include:

  • Designing and deploying dynamically scalable, highly available, fault tolerant, and reliable applications on AWS
  • Selecting appropriate AWS services to design and deploy an application based on given requirements
  • Migrating complex, multi-tier applications on AWS
  • Designing and deploying enterprise-wide scalable operations on AWS
  • Implementing cost control strategies

Prerequisites

Status as AWS Certified Solutions Architect - Associate

Eligibility

  • Achieved AWS Certified Solutions Architect - Associate
  • Two or more years' hands-on experience in designing and deploying cloud architecture on AWS
  • Abilities to evaluate cloud application requirements and make architectural recommendations for implementation, deployment, and provisioning applications on AWS
  • Capabilities to provide best practices guidance on the architectural design across multiple applications, projects, or the enterprise

Exam

Multiple choice and multiple answer questions
170 minutes to complete the exam
Exam available in English and Japanese
Practice Exam Registration fee is $40
Exam Registration fee is $300

AWS Certified Solutions Architect - Associate

Description

Intended for individuals with experience in designing distributed applications and systems on the AWS platform. Exam concepts you should understand for this exam include:

  • Designing and deploying scalable, highly available, and fault tolerant systems on AWS
  • Lift and shift of an existing on-premises application to AWS
  • Ingress and egress of data to and from AWS
  • Selecting the appropriate AWS service based on data, compute, database, or security requirements
  • Identifying appropriate use of AWS architectural best practices
  • Estimating AWS costs and identifying cost control mechanisms

Prerequisites

None, but it is recommended that candidates take the Architecting on AWS and AWS Certification Exam Readiness Workshop

Eligibility

  • One or more years of hands-on experience in designing available, cost efficient, fault tolerant, and scalable distributed systems on AWS
  • In-depth knowledge of at least one high-level programming language
  • Ability to identify and define requirements for an AWS-based application
  • Experience with deploying hybrid systems with on-premises and AWS components
  • Capability to provide best practices for building secure and reliable applications on the AWS platform

Exam

Multiple choice and multiple answer questions
80 minutes to complete the exam
Available in English, Japanese, Simplified Chinese, Korean, French, German, Spanish, and Brazilian Portuguese
Practice Exam Registration fee is $20
Exam Registration fee is $150

There's a lot of interest in DevOps in the IT world right now.

AWS Certified DevOps Engineer - Professional

Description

The AWS Certified DevOps Engineer - Professional exam validates technical expertise in provisioning, operating, and managing distributed application systems on the AWS platform. Exam concepts you should understand for this exam include the ability to:

  • Implement and manage continuous delivery systems and methodologies on AWS
  • Understand, implement, and automate security controls, governance processes, and compliance validation
  • Define and deploy monitoring, metrics, and logging systems on AWS
  • Implement systems that are highly available, scalable, and self-healing on the AWS platform
  • Design, manage, and maintain tools to automate operational processes

Prerequisites

AWS Certified Developer - Associate
AWS Certified SysOps Administrator - Associate

Eligibility

  • Two or more years' experience in provisioning, operating, and managing AWS environments
  • Experience in developing code in at least one high-level programming language
  • Experience in automation and testing via scripting/programming
  • Understanding of agile and other development processes and methodologies

Exam

Multiple choice and multiple answer questions
170 minutes to complete the exam
Exam available in English
Exam registration fee is $300

About the Author

April Miller Cripliver holds a doctorate in Management Information Systems and has earned more than 25 computer certifications in networking, security, hardware and operating systems. She is a Subject Matter Expert for CompTIA and owns USER FRIENDLY CONNECTIONS, a computer consulting firm in northwest Indiana. Contact Dr. Cripliver at Info (at) UserFriendlyConnections (dot) com.

Posted to topic:
Tech Know

Important Update: We have updated our Privacy Policy to comply with the California Consumer Privacy Act (CCPA)

CompTIA IT Project Management - Project+ - Advance Your IT Career by adding IT Project Manager to your resume - Learn More