Senior Software Developer - Procedural (Frostbite) - C++
Frostbite is EA’s state-of-the-art multi-platform game development engine. Our global team develops creative engine features and cutting-edge tools that let our game makers create stunning games. We’re honoured to have thousands of game developers worldwide using Frostbite as they create some of the industry’s best-known titles and amazing player experiences. Join us as we help shape the future of gaming with Frostbite.
- The mission of the Procedural team is to develop state-of-the-art procedural technologies into Frostbite to help game teams around the world build bigger and richer games.
- As senior software engineer in the procedural team you will report to the Engineering Manager and will be called to work from low-level mesh processing and low-level content database code up to high-level World Editor UI and DCC workflows code.
- You will build high-quality code, review and provide feedback on technical designs and code written by other software engineers, and work with game teams to help them improve existing and develop new technologies.
- Open to Hybrid and Onsite Developers
- Bachelor's degree or higher in Computer Science, Engineering or Software Engineering or equivalent.
- High level of proficiency with C++ and good understanding of C# or WPF.
- 7+ years of professional software development experience.
- Experience designing and implementing maintainable, structured and documented code.
- Experience with object-oriented design patterns and test-driven development.
- Experience with multithreaded architectures and synchronisation principles.
- Experience with memory management, multi-core use, profiling and optimization.
- Excellent debugging skills.
- You will be remote-friendly.
- Experience with asset data pipelines, procedural asset generation.
- Experience with Houdini, Maya SDKs or other DCC tools.
- Experience with Python for scripting or tool development.
- Experience with geometry/mesh formats and processing.
- Experience with rendering techniques.
- Experience with Agile methodologies for software development.