Senior Tools EngineerRequisition ID:
Infinity Ward is looking for a Senior Tools Engineer to join our team.
The ideal candidate will have extensive full-time programming experience in games. We are looking for someone who is passionate about the digital content production process and who is passionate about working with content creators and engineers of other disciplines to build awesome tools
The tools team at Infinity Ward is responsible for providing a good user experience for the content creation story of game development. This includes improving the content editing tools as well as the build pipeline technology used to deliver content changes to the game. It also encompasses delivering good feedback to the entire studio on both a micro and macro level. This includes keeping artists informed about the specific changes they submit, and the larger team informed about the health of the whole game.
This is an exciting opportunity to join an award-winning video game developer, and work with the best gaming talent in the world.
Priorities can often change in a fast-paced environment like ours, so this role includes, but is not limited to, the following responsibilities:
- Design and development of various asset creation and management tools ranging from exporters, to content creation tools, to asset management tools, to build tools, to frameworks.
- Maintenance and support of existing and new and infrastructure as needed, including honing studio services such as: Continuous integration, Automated Testing, Distribution and Caching systems.
- Work with content creators, designers, and other engineers to gather requirements and ensure tool design specifications are met.
- Coordinate feature sets, roadmaps, and technical requirements provided by stakeholders to implement high quality software to facilitate the creative process.
- 5+ years of programming experience in developing media pipeline tools.
- Demonstrated proficiency in and knowledge of C#/C/C++, data structures, performance, and multi-threaded programming techniques.
- Understanding of fundamentals of 3D math.
- Knowledge of common data structures and algorithmic solutions.
- Client focused.
- Contributed extensively to the development of one or more shipped games, PC, or console.
- Thorough knowledge of software design practices including modular architecture, event-driven architecture, and software design patterns.
- Ability to quickly understand and work with internal and externally developed code.
- Bachelor’s degree in Computer Science or related field.
- A strong passion for video games of many kinds.
- Experience with developing composite applications using the Model View-View Model design pattern.
- Experience with various technologies and SDKs such as WPF, Prism, and Rad Controls.
- Experience with SQL Server.
- Experience with Maya plugin and script development.
- Experience with computer game technologies including: Camera systems, AI programming, physics, 3D programming, animation, collision detection.
- Demonstrated ability to write clean, readable, portable, reliable, and optimized tools code.
- Contributed extensively to the development of tools for at least one shipped console game.