DevOps Software Engineer Intern
13 days ago
We are EA!
And we make games – how cool is that? In fact, we entertain millions of people across the globe with the most amazing and immersive interactive software in the industry. But making games is challenging. That’s why we employ the most creative, passionate people in the industry.
About Development and Release Engineering Team
Ever wondered how dozens of people work collaboratively and simultaneously to develop a complex game? In EA this is facilitated by us, the Development and Release Engineering (DRE) team. Our domain is at the intersection of DevOps, Release Management, Build Engineering, and Production Support. We run services that empower development teams around the world. We enable EA to ship great games.
We develop and run Continuous Integration (CI) systems to provide fast and reliable automated feedback on the production readiness of a game every time there’s a change in any part of the system (code, art, audio or production infrastructure). We are EA’ subject matter experts when it comes to Automated Builds and Smoke Testing. Our systems are producing tons of metrics and the builds that end up on players’ PC/console/mobile. We are the superusers of Perforce and git and consultants for the Release strategy. We write our own technology when we have to, but we prefer using well-known open source software.
People come to us with complex loosely-defined problems and ask us to turn them into solutions. Sometimes this means we’re collaborating on problems outside our knowledge area, which requires us to learn new things quickly.
We’re a small team with a great deal of responsibility, which means you’ll learn new technologies and join us as being domain experts in new areas.
What you will do:
- Develop and operate Continuous Integration for games
- Expand the build and test automation with new projects or functionality including configuration of orchestration jobs, development of build scripts, installation procedures
- Provide troubleshooting support for automation breakages; critically assess the repetitive changes and suggest and implement ways of eliminating toil activities
- Monitor metrics in order to optimize the automation systems
- Help evolve our release pipeline, using concepts like Infrastructure as Code and Advanced Virtualization
You will have the opportunity to:
- Interact and experiment with diverse technologies.
- Have exposure into multiple game projects simultaneously.
- Engage with game titles across a variety of platforms (PCs, consoles, mobile devices).
- Experience a distributed work environment.
- Inject fresh ideas and bring innovations in our tech stack.
- You will need to have basic knowledge of batch/shell scripting;
- Also OOP knowledge using programming languages like C# / Java;
- It will be greatly appreciated if you already have broad base of general knowledge and interest on multiple disciplines within software development and practices
- Good verbal and written English
What tech are we using?
Although it is not required to have experience in all our tech, candidates often find it helpful to know what we are using. This is not an exhaustive list and this changes over time as we find better solutions.
- Windows 10, CentOS
- Jenkins CI
- Perforce, git, GitLab
- vSphere / VMware
- Groovy, Python, C#, C++, or Java
- batch/shell scripting, PowerShell
- Chef, Ansible, Packer
- Elasticsearch, Kibana, Splunk, and SQL
- Docker, Kubernetes, AWS