Full Time Job

Software Engineer

Electronic Arts

Bucharest, Romania 11-22-2020
  • Paid
  • Full Time
  • Senior (5-10 years) Experience
Job Description

Development Technology & Services (DTS)

Development Technology and Services (DTS) powers EA studios to create even greater player experiences. We help shape the future from the way games are created, to how they are played and viewed.

We are a global team and also the largest studio within EA! DTS proudly consists of the following teams: Engineering Services (ES), Studios Data Insights, and Quality, Verification, and Standards.

About the 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, helping EA 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's 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' computers/consoles/phones.

Role Summary:

We are a full stack DevOps team looking for a colleague that shares our passion to combine software development with production operations. Reporting to the local Engineering Manager, you will focus on developing or enhancing automation projects, plus modernizing components of the CI systems that we operate, all of these while maintaining a high-quality service for our existing customers.

As we are supplying a service to development teams, it is necessary to have a customer-oriented attitude and an effective communication.

Most of our automation projects are orchestrated with Jenkins (implying work with Pipeline and Groovy) and execute various scripts (in batch/shell/PowerShell/Python). Our build processes produce volumes of CI artifacts unmatched in other industries and for that, not only that we administrate large volumes of virtualized computing power and storage, but we are compelled to optimize our flows through parallelism and reusing components and artifacts. To keep under control the complexity generated by this, our team engaged into different solutions, from using object-oriented programming (OOP) concepts in the Pipeline flows to employing infrastructure-as-code (IaC) techniques. Our technical ecosystem also includes tools and technologies related to source control, monitoring infrastructure, alerting users, storing data, deploying dashboards, web services, containers. While sharing responsibilities as part of a full stack DevOps team, no one is expected to master all of these areas, but the exposure and opportunity to exercise them is there for everyone.

We write our own technology when we have to, but we prefer using well-known open source software. Some of the mentioned technologies are those we are working with NOW but your adaptability and eagerness to experiment and learn are important to this role as we are constantly evolving and TOMORROW our technical landscape might look different.

• Develop, optimize, monitor, and troubleshoot CI automation projects.
• Identify opportunities to evolve components of the CI automation system.
• Resolve performance bottlenecks in complex systems including network, OS, or hardware.
• Prioritize a variety of tasks, ensuring customers are informed of the status of their requests.

In this role you will have the opportunity to:
• Interact and experiment with diverse technologies and a variety of platforms (PCs, consoles, mobile devices).
• Exercise and develop your analytical and troubleshooting abilities.
• Have exposure into multiple game projects simultaneously.
• Experience a distributed work environment.
• Inject fresh ideas and bring innovations in our tech stack.

• A broad base of general knowledge and interest on multiple disciplines within software development and practices
• 5+ years in a DevOps position or similar
• Experience with Jenkins CI and Groovy or Python
• Experience with databases (MS SQL) or other data management engines (Elasticsearch, Splunk, MongoDB)
• Experience with Containers and Container orchestration (Docker, Kubernetes)
• Experience with virtualization platforms or Cloud computing technologies
• Experience with Infrastructure as code tools (Packer, Ansible/Chef, Terraform)
• Interest and knowledge of agile methodologies
• Working knowledge in Linux (RedHat, CentOS)

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, Java
• batch/shell scripting, PowerShell
• Packer, Ansible/Chef, Terraform
• Docker, Kubernetes, AWS
• Elasticsearch, Kibana, Splunk, MSSQL, MongoDB
• Zabbix

Company Profile
Electronic Arts

Electronic Arts Inc. is a global leader in digital interactive entertainment. EA develops and delivers games, content and online services for Internet-connected consoles, mobile devices and personal computers.