Backend Software Engineer
Backend Software Engineer - New Game
We exist to inspire the world to play and we’re looking for the right people to make that happen. As we bring new forms of entertainment to people around the world through our games, experiences and new ways to play, we need innovative, collaborative, diverse and adaptable people to keep making Electronic Arts better.
You will be working on backend cloud web service features to facilitate creating exciting new features for the EA Mobile Lifestyle Studio. As a studio, we build games for Imaginative Creators; games that allow players to create something that is an expression of their unique personality.
In this role you will be reporting into the New Game’s Backend Lead Engineer and collaborating with multiple designers, producers, and client engineers from prototyping and market testing through to launching and live operations for key game backend features. The bulk of your work will be done in Java and Kotlin, using the Spring Boot framework, and deployed to Kubernetes in the Google Cloud Platform.
- Develop responsive, resilient, massively scalable, and globally available web services that support millions of players
- Creatively blend security best practices and original techniques to keep user data secure and prevent cheating
- Apply and improve service deployment and troubleshooting strategies that maximize uptime
- Drive design and implementation of APIs and protocols that are consistent, formalized, and testable
- Demonstrate excellent technical problem-solving skills under iteratively changing requirements during game development
- Author and review technical design documents and API specifications detailing software requirements
- Maintain a suite of automated tests that validate the correctness of backend services
- Demonstrate excellent technical problem-solving skills while responding to the changing requirements of the game development process
- Continuously learn from other Software Engineers to create best-in-class implementations
Please note that you do not need to satisfy all requirements to be considered. We encourage you to apply if you can meet most of the requirements and are comfortable having an open conversation about your qualifications.
- You have a Bachelor/Master's degree in Computer Science, Computer Engineering or related field.
- 5+ years of job experience in a hands on coding role
- You've shipped and supported scalable web services hosted in the cloud
- You own large features from design to deployment, including live service support
- You develop high-quality, testable software
- You have a desire to work with client engineers and designers to iteratively add features and improve APIs
- You develop APIs for products that release new updates with zero downtime strategies and tools
- You have experience with load testing, troubleshooting, and optimizing performance of web services
- You work on software that requires developing and optimizing queries and database access patterns
- You're willing to iterate quickly in a fast-paced environment
- You have excellent written and verbal communication skills
- You're a motivated self-starter; able to operate with autonomy
- You have a desire to teach and learn from your peers
- You have experience developing services that support mobile applications
- You've worked in the games industry before
- You've built software with Java or Kotlin
- You've shipped services using the Spring Boot Framework
- You've worked on large teams using version control tools like git
- You've deployed web services using Kubernetes and containerization
- You have experience with Google Cloud Platform, including Google Kubernetes Engine, or Google Cloud Spanner
- You have experience with distributed streaming technologies like Kafka
- You've shipped web services that scale to millions of daily users
- You have experience working in large data-driven services