- 5+ years' experience with C++ development.
- Experience developing graphics techniques and detailed knowledge of graphics hardware.
- Math skills including trigonometry, calculus, and linear algebra.
- Formal background in rendering with experience that may include shaders, animation, skinning, lighting, special effects, and tool development.
- 5+ years of experience with Direct 3D, Open GL or equivalent.
- Experience in object-oriented design and implementation.
- Knowledge of good software engineering practices.
- Understanding of memory management, multiple processor use, and runtime optimization.
- Test and debug other engineer's code.
- Bachelor's degree in computer science or related field, or equivalent training and professional experience.
- Experience shipping at least one title on PS4, PS3, Xbox One or Xbox360.
- Experience with graphics tools and exporters such as Maya, Motion Builder and Photoshop; knowledge of Maya API and Mel programming.
- Expertise in several of these fields: vertex and pixel shaders including HLSL and FX; terrain or environment rendering; advanced lighting techniques, particle systems, special effects, art pipelines, tool development and game engine architecture.
- Working knowledge of DX11 is a significant plus.
Base City:
Remote-Canada - Remote
Salary:
$133k to $193k
Rating:
Self-taught:
Position Type:
Full-time
Position Keywords:
- Animation
- Bachelor - Computer Science
- C++
- Calculus
- debugging
- Direct 3D
- DX11
- Electronic Arts
- FX
- Game Engine Architecture
- Graphics Hardware
- Graphics Techniques
- HLSL
- Lighting
- linear algebra
- Maya
- Mel Programming
- Memory Management
- Motion Builder
- Multiple Processors
- Object Oriented Design
- Open GL
- Photoshop
- Pixel Shaders
- PS3
- PS4
- Rendering
- Run Time Optimization
- Shaders
- Skinning
- Software Engineer
- Software Testing
- Special Effects
- Technical Design
- Terrain Rendering
- Tool Development
- Trigonometry
- Vertex Shaders
- Xbox 360
- XBox One
Required:
Bachelor - Computer Science
Experience:
5 Years C++
Other Experience:
About the Job:
We are a global team of creators, storytellers, technologists, experience originators, innovators and so much more. We believe amazing games and experiences start with teams as diverse as the players and communities we serve. At Electronic Arts, the only limit is your imagination.
EA SPORTS is one of the most iconic brands in entertainment – connecting hundreds of millions around the world to the sports they love through a portfolio of industry-leading video games.
Our Advanced Technology Group is part of the EA SPORTS Technology organization, focusing on identifying and creating new, scalable technologies for game teams. We are looking for close collaboration with game teams, central art teams, and the Frostbite engine team; though the technologies developed can apply to many different engines, environments, and hardware platforms. You will work on our strategic, multi-year projects focused on improved creation pipelines and runtime functionality, both users facing and internal, for all EA SPORTS titles.
What they want you to do:
A Rendering Software Engineer is a part of the game creation process. You will report to the engineering team's manager and work with your peers to render specific tasks. You will be involved in architectural design and implementation of rendering technology on multiple platforms. You will work with designers, artists, and other engineers to build complex graphics features – life-like visuals, huge and immersive worlds, and graphical FX.
Your Responsibilities:
- Develop core rendering features, engine components and tools.
- Research and implement rendering techniques.
- Create reusable and flexible rendering technologies.
- Write technical design specifications.
- Design, maintains, implements, tests and debugs code, pipelines and other rendering-related sub-components and packages.
- Profiles and optimizes rendering modules of a game engine.
- Stay up to date with latest hardware & software changes enhancing the rendering domain.
- You will report to the engineering team's manager and work with your peers to render specific tasks.