Senior Engine Programmer
Firesprite – Liverpool, UK (Remote Options)
We are supporting Firesprite as they search for a Senior Engine Programmer to join the code team on a dark, story-driven, next generation ‘narrative adventure’ title with genre defining goals.
This huge, highly ambitious partnership project takes atmosphere, storytelling, player agency, and narrative firmly into ground-breaking new territory on next- generation hardware technologies.
This project has AAA ambitions, with a heavy focus on art, animation, and delivering unique character performances, heightening player presence and immersion like never before.
As a Senior Engine Programmer, you will be responsible for developing and maintaining low-level systems and overall architecture. You will be working on next gen platforms and in areas such as (but not limited to) memory management, loading, streaming, physics, platform specific systems, pipelines, conversion, optimisation, and more. They expect those in a senior role to be able to mentor more junior programmers and take full ownership of engine systems. Are you up to the challenge?
Your day-to-day will include the following tasks:
- Analyse existing engine systems and determine if they meet project requirements. If necessary, define how to adapt them or replace them to better meet game requirements
- Collaborate with other developers to examine the constraints of the existing engine and content budgets
- Determine and help maintain CPU performance and memory budgets across code disciplines and platforms
- Review performance of code and assist in the optimisation of algorithms
- Review performance of compiler and associated build processes, advising and aiding in streamlining the development process
- Review and support the data pipelines, ensuring that they are efficient and work reliably
- Create and maintain systems to help code teams with performance analysis
- Analyse memory usage to identify and solve inefficiencies, errors, and fragmentation
- Measure and track the in-game loading processes to ensure high efficiency
- Create and maintain systems to minimise impact of loading on players
- Plan, manage, and regulate the multithreading environment and CPU core assignment
- Diagnose and repair the most complex bugs, including creating systems to help in debugging
- Evaluate, plan, and manage updates of SDKs and middleware
The skills and XP you'll need to succeed:
- Strong knowledge of, and experience in, C++ programming
- Learning specific areas of and debugging issues in large and complex C++ codebases that utilise custom tools and engines
- Experience profiling and optimising CPU performance of real-time and networked/multiplayer/online oriented systems
- General software engineering knowledge, such as OOP, design patterns, and API development
- Confident working with 3D maths, vectors, matrices, and linear algebra
- The ability to write and optimise solid, robust, and maintainable game code that respects agreed development guidelines
- 2+ years relatable experience in a similar role, ideally with experience of working with (and a passion for) gameplay mechanics concerning first person shooting or vehicle-based flight/driving
The following will earn you BONUS POINTS:
- Advanced understanding of C++ and debugging
- Experienced with Unreal Engine
- Solid proficiency in optimisation techniques
- Excellent understanding of CPU and GPU bottlenecks
- Strong 3D maths
- Expert understanding of multithreaded/parallel programming
- Previous experience as a Senior Engine Programmer on a shipped Console title
If you are interested in applying for this or discussing your specific situation in a confidential way, get it touch!
Email email@example.com or call +44 (0)1709 834777