Skip to content

Latest commit

 

History

History
88 lines (73 loc) · 3.27 KB

DevOps_Engineer.md

File metadata and controls

88 lines (73 loc) · 3.27 KB

DevOps Engineer

General Characteristics

Individuals within the DevOps Engineer role work closely with team members to understand the stakeholder requirements that drive the analysis and design of quality technical solutions. DevOps Engineers are involved in the full life cycle of an application. DevOps Engineers are team members of an agile development process. They are responsible for the design and implementation of applications’ build, release, deployment, and configuration activities.

Other responsibilities include working with internal business partners to gather requirements, prototyping, architecting, implementing/updating solutions, building and executing test plans, performing quality reviews, managing operations, and triaging and fixing operational issues.

DevOps Engineers must be able to adjust to constant business change; common types of changes include new requirements, evolving goals and strategies, and emerging technologies. DevOps Engineers require the ability to interact, develop, engineer, and communicate collaboratively at the highest technical levels with clients, vendors, partners, and all levels of company staff.

Skills Required

Abstract Skills

  1. Coding or scripting
    • No specific language, but Java or .Net experience, combined with a non-compiled language like Node.js or Python is preferred
  2. Process Re-Engineering
    • We need engineers that can look at the problem set and continuously look for ways to improve the process. Creativity and good judgement are critical!
  3. Communicating and collaborating with others
    • This is a highly collaborative role, and requires excellent teamwork and communication skills.
  4. Master Troubleshooter
    • We need engineers that can jump in the middle of a very hard problem and dig their way out.

Preferred Experience

  • Experience and comfort with linux command line and administration
  • Experience and working knowledge of configuration management systems:
    • Chef
    • Puppet
  • Experience and working knowledge of different SCMs:
    • Git
    • SVN
    • Perforce
    • TFS
  • Experience and working knowledge of CI/CD tools:
    • Jenkins
    • Ansible
    • Electric Cloud
    • UrbanCode
  • Experience and working knowledge of Container Systems:
    • Kubernetes
    • Docker
    • OpenShift
    • Pivotal Container Service
  • Understand and comfortable with scripting:
    • Shell Scripting
    • Groovy
  • Understand Build Systems like:
    • Maven
    • Ant
    • MS Build
    • Nuget
    • NPM
    • Gradle
  • Understand and working knowledge of Artifact Repositories:
    • Artifactory
    • Nexus
    • Sinopia
  • Understand and experience with Agile processes and tools:
    • Rally
    • Jira
  • Understand and experience with Testing Automation Tools:
    • Selenium
    • Unit Testing Systems
  • Understand and experience with Static Code Analysis Tools:
    • SonarQube
    • ESLint
    • FXCop
    • StyleCop
  • Understand and experience with Security and Vulnerability Scanning:
    • OWASP
  • Experience and working knowledge of Database administration
    • SQL
      • MySQL
      • MsSQL
      • Oracle
    • NoSQL
      • MongoDB
      • Redis

References

MIT DevOps Position Description

Puppet "What is a DevOps Engineer"