# Senior C++ Generalist Software Engineer - Advanced Technology Group

**Company**: Electronic Arts
**Location**: Vancouver, British Columbia
**Work arrangement**: hybrid
**Experience**: senior
**Job type**: full-time
**Category**: Engineering
**Industry**: Technology
**Ticker**: EA
**Wikidata**: https://www.wikidata.org/wiki/Q173941

**Apply**: https://jobs.ea.com/zh_CN/careers/JobDetail/Senior-Software-Engineer/215841?utm_source=yubhub.co&utm_medium=jobs_feed&utm_campaign=apply
**Canonical**: https://yubhub.co/jobs/job_f56eaccb-0b1

## Description

Electronic Arts creates high-quality entertainment experiences, inspiring players and fans worldwide. As a leader in the gaming industry, EA SPORTS connects hundreds of millions of people to the sports they love through industry-leading video games.

The Advanced Technology Group at EA SPORTS focuses on identifying and creating new, scalable technologies for game teams. This team collaborates closely with game teams, central art teams, and the Frostbite engine team to develop strategic, multi-year projects that improve creation pipelines and runtime functionality across all EA SPORTS titles.

As a Senior Generalist Software Engineer, you will play a key role in the game creation process, including architectural design, implementation, and debugging on multiple platforms. You will work on complex problems alongside designers, artists, and other engineers in various domains, including rendering, gameplay, audio, user interface, online, physics, databases, and tools. Your responsibilities will include:

- Developing technical solutions covering main aspects of game development, including game features and optimizations of frame-rate and load-times

- Collaborating with other domain owners to integrate and develop technologies into the game

- Analyzing impact on metrics throughout the development cycle

- Providing feedback, guidance, and solutions for improvement and optimizations

Requirements:

- 6+ years of experience in C++ software development

- Proficiency in integrating and maintaining large-scale systems covering multiple domains

- Understanding of memory management, multiple processor use, and run-time optimization

- Knowledge of assembler, scripting languages (Python, Lua), and C#

- Experience with 3rd party APIs

- Skills in debugging complex applications

- Knowledge of job-based architectures

- Strong understanding of geometry, linear algebra, calculus, and physics as they pertain to transformations and motions in 3D Space

- Bachelor's degree in computer science or related field, or equivalent training and professional experience

Benefits:

Electronic Arts offers a comprehensive benefits package tailored to meet local needs, which may include health insurance, mental health support, retirement savings, paid time off, family leave, free games, and more. The company fosters an inclusive environment where all teams can thrive.

## Skills

### Required
- C++
- software development
- game development
- memory management
- multiple processor use
- run-time optimization
- assembler
- scripting languages
- C#
- 3rd party APIs
- debugging complex applications
- job-based architectures
- geometry
- linear algebra
- calculus
- physics

### Nice to have
- XBOX
- PlayStation
- Mobile
- PC
- Cloud-based games
- graphics libraries
- DirectX
- OpenGL
- Metal
- static and performance

---

Source: [Apply at jobs.ea.com](https://jobs.ea.com/zh_CN/careers/JobDetail/Senior-Software-Engineer/215841?utm_source=yubhub.co&utm_medium=jobs_feed&utm_campaign=apply)
