Senior DevOps Engineer

USA

Stamford, CT and Chicago, IL

Striving for excellence is in our DNA. Since 1993, we have been helping the world’s leading companies imagine, design, engineer, and deliver software and digital experiences that change the world. We are more than just specialists, we are experts.

DESCRIPTION


Currently we are looking for a Senior DevOps Engineer for our Stamford, CT and Chicago, IL offices to make the team even stronger.

The DevOps team is responsible for providing a reliable software delivery process to ensure the development community can focus on delivering high quality software through automated testing and deployment.

To achieve the goal, the team uses a combination of in-house tools together with latest open source and commercially available technologies.

Project technologies and tools

  • Scm: github;
  • CI: teamcity;
  • Artifact repository: nexus;
  • Issue tracker: rally;
  • Monitoring: splunk (mid term) + appdynamics;
  • Wiki: confluence / jive (connections);
  • Configuration management tool: puppet (mid/long term);
  • JBehave, FitNesse.

Responsibilities

  • Support the current software delivery process, ensuring the 'follow-the-sun' development cycle never stops;
  • Improve the software delivery process as there is always a way to make things better and leaner;
  • Automate everything;
  • Strive for simplicity and self-service, so development teams don't depend on devops to perform basic operations;
  • Listen to the development community and understand their needs, and be able to talk to different teams (unix, db) to ensure any issues are solved.

Requirements

  • Linux Skills:
    • Advanced shell commands usage (find, etc.);
    • Linux concepts (filesystem, processes, memory).
  • Automation:
    • Scripting Language (Python, Ruby, Shell Scripting);
    • Version Control (Subversion & GitHub);
    • Config Management Tools (Puppet, Chef, Ansible).
  • Programming Languages:
    • Java (at least basic knowledge, as everything we are doing is jvm related);
    • JVM troubleshooting.
  • Build:
    • Tools (Maven, Gradle);
    • Build life cycle knowledge (why are we building, which stages is a build going through before being deployed into prod).
  • Tooling: Admin, Upgrade + User Support;
  • Continuous Integration (TeamCity, Jenkins/Hudson, Bamboo);
  • Dev Support (Nexus, Sonar);
  • ALM / Wiki (Confluence, Rally, Jira);
  • Database (Oracle):
    • Troubleshooting.
  • Troubleshooting attitude:
    • Being able to identify root causes of complex environmental issue spanning different technologies (e.g. database, java);
    • Ensuring a strategic long term alignment.