11

I am looking for recommendations on how to skill up to be a dedicated DevOps Engineer.

I have always wanted to work on Development related projects as I love coding but unfortunately I have never got the chance. I have previously worked on freelance projects using .Net and PHP and I am certified in Java SE but I have never used it.

My work experience incorporates being in system and application administration. Mostly I am a senior now in this field so a switch to Development is not preferred as I would have to start over as a junior. However I think DevOps will be perfect for me but I need to know what I need to study to fill the gaps in my knowledge to be a good dedicated DevOps engineer (preferably the part about writing automation and tools).

Please recommend what should I study, for example I heard Python and Perl and Ruby are very good for DevOps but what else should I start with and what is the mandatory skills that i need to cover first?

My current skill set:

Sys. Admin

  • Unix (HP-UX, Solaris) and Linux (Ubuntu, Red hat, CentOS) Administration
  • Middleware Technologies administration (WebLogic, Apache-Tomcat, WebSphere, MQ)
  • Bash/Shell Scripting

  • Web server configuration and administration

  • Excellent knowledge of common database systems (SQL Server, Oracle, MySQL, etc.)
  • Web services and Integrations SOAP/REST/API
  • Oracle Business Intelligence Suite (OBIEE, DAC, Informatica)
  • ITSM Remedy Development and Administration.
  • SAP Business Object (Analytics).
  • Splunk
  • Service Center –ITIL-enabled IT service Management
  • Strong understanding of Web Application technologies.

Developer

  • Expert Development skills in Microsoft Visual Basic.
  • Excellent Development Skills in Java SE.
  • Microsoft .Net Development
  • MS SharePoint development.
  • Expert in MS Office with Expert knowledge in Macros and Automation across all MS office Applications.
  • Intermediate PHP development (CakePHP)

2 Answers 2

9

Have a look for DevOps Engineer roles and check out the list of technologies that they are seeking. Typically you'll need automation scripting skills (like Bash, Python or PowerShell), configuration management skills (like Chef, Puppet or Ansible) and some fundamental experience maintaining and configuring a Build/Release pipeline. For this, look to get experience with CI/CD tools like AppVeyor (.NET), Jenkins, Travis CI etc. You should also be familiar with Git and source control systems in general such as BitBucket or TFS. You would also benefit from becoming familiar with automated testing techniques.

If you haven't already, consider hosting some open source products in Github and setting up a pipeline for them that performs automated tests on commits as well as (if possible) publishing to a package management system. This is great experience as well as demonstrates your skills.

For a more general understanding of the philosophy of DevOps (as beware that it's a culture as well as a technology set) do as much reading as you can on the topic and start following (e.g via Twitter) the likes of Gene Kim, Jez Humble, and Patrick Debois. Also I recommend you read The DevOps Handbook which they authored. It is a very thorough explanation of what DevOps is as well as how organisations might adopt it.

You could also check out DevOps related Meet Ups and Conferences (such as Velocity, DevOpsDays and Config Management Camp). The opportunities will of course vary depending on where in the world you are.

1
  • well said.. from my experience coming from development into DevOps and working with sys admins they typically lack the skills most sought after in the form of version control (Git), basic scripting skills (bash or Python), and being able to construct pipelines using something similar to Jenkins Pipeline DSL.. I would also recommend terraform in addition to knowing one of the main CM tools (puppet, chef, ansible, salt) Jan 24, 2018 at 18:37
3

Make a list of DevOps tools that seem to be popular, download, follow the manual, and just do it.

  • Vagrant
  • Ansible
  • Docker
  • Kubernetes/OpenShift

This will give you a good running start with the tools closer to the "Ops" side, and - if you manage to also pick up why and what for these tools are used - will make you a worthy member of most teams. You can pick up the more Dev-sided bits and pieces as you go (i.e., CI/CD pipelines etc.).

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.