DevOps Programmer

Overview

Our DevOps Programmer will be an integral part of the team that not only helps the company take advantage of emerging trends but helps drive and define the trend.  As part of the team you will help ideate, investigate, and prove new techniques which can be used to improve both current and future Zenimax titles and services.  You will be asked to not only write significant portions of new code bases but maintain and integrate that code into existing code bases as well.  Our team is results driven and we are looking for people who want to actualize real world technologies that impact the industry in a profound way.  Expect your abilities and scope of work to expand in a fast paced and highly innovative environment.

Responsibilities

The DevOps Programmer is responsible for co-developing requirements for new services, engaging in iterative development on infrastructure and applications, and supporting the operations team with adapting services in the live environment. 

  • Build, support, and lead operation of our internal services infrastructure.
  • Operationalize services built for new technologies in concert with external operations and platform teams.
  • Lead interface for operations and platform teams as they operate services supporting new technologies.

Qualifications

  • Bachelor’s degree in Computer Science or Information Science, or equivalent work experience
  • 3+ years or more hands-on experience in designing, developing, implementing, and supporting services
  • 3+ years working with Linux in a production environment.
  • Experience with containerization and orchestration that surround their use (docker, containerd, Kubernetes, etc)
  • Experience with multiple cloud provider offerings, frameworks and the software ecosystems that surrounds their use. (e.g. AWS, Azure, OpenStack)
  • Linux administration experience on multiple distributions
  • Experience with scripting languages such as Bash, PowerShell, Python
  • Experience with programming languages in one or more of the following Typescript/NodeJS, Python, C/C++, Java, Golang, C#
  • Experience with monitoring, reporting, and logging tools at local and cloud scale
  • Knowledge of version control systems and branching concepts (e.g. GitHub, Perforce)
  • Experience using and/or developing CI/CD pipelines and workflows (e.g. Jenkins, GitHub Actions)
  • Good understanding of OSI model fundamentals and applied experience with networking and NAT traversal
  • Experience writing resilient, secure, well-tested, maintainable code
  • Excellent verbal and written communication skills
  • Excellent analytical and troubleshooting skills

Preferred Skills

  • Windows & MacOS administration experience
  • Experience using databases (e.g MySQL, MongoDB, Azure CosmosDB, AWS DynamoDB)
  • Experience using various storage solutions (Object/Block/File)
  • Experience with various messaging technologies (e.g. RabbitMQ, ZeroMQ, AWS Firehose, Azure EventHub, Kafka)
  • Exposure with one or more configuration management tools (e.g. Ansible, Puppet, Chef)
  • Exposure to one or more infrastructure as code tools (e.g. Terraform, AWS CloudFormation, Azure Resource Manager, OpenStack Heat)
  • Good understanding of DNS, TLS, and certificate management
  • Experience configuring and implementing authNZ protocols with new services using common identity providers (e.g. Active Directory, LDAP, AWS Cognito)

We embrace diversity, equity, and inclusion in everything we do – from recruiting for our studios, publishing and operations to fostering safe and respectful workplaces that encourage collaboration. Our culture is based on principles of respect, inclusion, and fair treatment and we welcome anyone into our family without regard to race, religion, gender identity, sexual orientation, or age.

Our diversity fuels our innovation and inspires us to create game worlds that bring us closer to the global community of players we serve.

What to Expect

Submit to a Position

You will receive an automated email confirming we have received your resume.

Due to the high volume of applications received, it's not possible for us to respond directly to each candidate.

Don't see your desired position listed? Apply under "General Application" instead!

Recruiter Call

If you are selected, you will be contacted by our team for an initial phone screen to chat about your previous experience.

You may go through one or two phone interviews, and possibly a follow-up Skype call.

If your qualifications do not match the criteria of a current position, your resume will be kept on file.

Site Visit

The next step will be an invitation to come out and meet the team at the studio for onsite interviews.

In the event that we choose not to move forward at any point in the recruiting process, we will let you know.

Your Privacy

ZeniMax understands the importance of privacy. Please review the Applicant Privacy Notice attached to each position, which explains how we process the personal information we collect about you when you apply for a job or submit information to us through our job portal. BY APPLYING FOR THIS OR ANY POSITION, SHARING THIS JOB, OR OTHERWISE PROVIDING US WITH YOUR PERSONAL INFORMATION THROUGH THIS JOB PORTAL, YOU ACKNOWLEDGE THAT YOU HAVE READ AND UNDERSTOOD THE APPLICANT PRIVACY NOTICE, WHICH IS SET FORTH IN THE “APPLICANT PRIVACY NOTICE” SECTION BELOW EACH POSITION.