描述和要求
EA's Production Infrastructure & Engineering (PI&E) organization provides the essential platforms and infrastructure hosting solutions that power EA's live services. Our charter is to make EA's games and services available to all players anytime and anywhere. To do this, we focus on the high availability of infrastructure, primary services, and studio services. We aim to help developers to experiment and build new games quickly with infrastructure services on-demand and workflows that promote rapid development in the cloud. In all of this, we focus on being there for players where and when they want to play.
Game Server Hosting
It's not enough to launch a game server process in the cloud and hope for the best. Many steps are required to go from building a game server executable and running it. Server executables need to be containerized or otherwise packaged. Infrastructure needs to be provisioned in each target region of the world. The number of servers running must scale to match demand and minimize cost. Metrics, logging, and alerting need to be configured to provide visibility into what is happening in these servers. Automating these steps allows game studios to focus on their specialties: creating games and knowing their user base.
As a Software Engineer II, you will report to the Director of Engineering.
Responsibilities:
You will deliver Game Server Hosting backend features, primarily in GoLang. This includes reviewing and proposing designs, implementing the feature in cooperation with others, and creating unit tests and other test automation. For larger scale efforts, break down the features into chunks of work that can be divided up amongst the team for parallel development.
You will participate in our current Kanban process by refining tickets down into achievable sizes, building on them, soliciting code review feedback and contributing to detailed code reviews for others, while always striving to make our code base better than it was before
You will be responsible for features, like enabling game servers to be run on a new hosting platform, creating a service that listens to our event bus and caches state for a responsive API or provides Slack notifications, etc.
You will move high quality tickets through our process, making the work of your peers better by contributing to design and code reviews.
Qualifications:
3+ years of experience with the Go language for server-side development
Experience with the standard processes of creating professional software, including integrating with the team process, writing high-quality code, reviewing code and designs
Nice to Have:
Experience with cloud service providers such as AWS, GCP, and Azure
Engineering Collaboration software - JIRA, Git, Slack, Confluence
Familiarity with Kubernetes, Terraform, or NATS.io