The Lead Gameplay Programmer role will report to the Studio Programming Lead. The Lead Gameplay Programmer will be responsible for ensuring the delivery of gameplay systems for use by other game teams (primarily Design and Gameplay Scripting but including other key stakeholders).Ensure delivery of high quality gameplay systems by the team. Prioritise, plan and manage the work of the team with minimal oversight. Help define the technical direction and develop innovative solutions for difficult gameplay problems. Line manage members of the gameplay programming team and communicate clearly with other team members and teams easily. Communicate with external companies and contractors with assistance. Able to tune gameplay systems based on high level design input with minimal assistance. Use appropriate data structures and algorithms to maximize efficiency (for both development time and runtime performance). Be vigilant for and resolve new problems, delays and risks to delivery of the team's objectives. Request support from higher level leadership when required.
This position will also be responsible for line management of the Gameplay Programming Team as well as scheduling, prioritising tasks, recruitment and mentoring of more junior staff. The role must provide technical leadership and be able to strike a balance between the immediate and long term needs of the project. The job will require flexibility, adaptability and the ability to help solve problems that touch multiple disciplines.
RequirementsExceptional communication skills, comfortable working across teams and mentoring staff. Capable of reading and quickly understanding complex code. Able to plan the work of the team including external dependencies with minimal input. Experience managing a team of programmers. Strong C++ programming and debugging skills. Extensive algorithm and data structure skills (including time and space complexity and real-world vs theoretical performance). Able to tune gameplay systems based on high level design input with minimal assistance. Able to understand and utilize multi-threading primitives Able to understand and utilize high level networking concepts Self-motivated and driven to creatively solve problems. Videogame programming experience on gameplay systems, including having shipped at least one AAA PC/console title. Bachelor's degree with a Computer Science/Software Engineering focus or equivalent experience.