Senior UI Programmer (182)

Job Description
Responsibilities

• Work as a key part of an agile development team, taking responsibility for organising and planning their own work;
• In collaboration with engine programmers, provide development interface tools (debug) for gameplay programmers;
• In collaboration with design and programming teams, quickly prototype interaction concepts for the game;
• Oversee the programming of the modules that underlie the user interface (e.g. ActionScript Flash modules);
• Optimise user interface module code so that it can be implemented on game consoles;
• Design and implement innovative and practical solutions to feature requests;
• Participate in the definition of coding standards & methods used on the team, and ensure coding standards are followed;
• Collaborate with system/feature stakeholders to discuss, collect, interpret and analyse technical constraints and establish technical solutions;
• Write clear and well-structured code using the appropriate data structure and algorithms while bearing in mind performance, maintenance and architectural  requirements;
• Include comments in the code and document implemented features;
• Demonstrate understanding of the basics of load and game feature testing and write test code;
• Stay up-to-date with state-of-the-art technology and promote its use within the studio;
• Perform code reviews for peers;
• Mentor less experienced programmers;
• Assist the Lead Programmer with the design, planning and reviews of team tasks;
• Propose strategies which guarantee the modularity of the code in its entirety;
• Use data modelling, templating, and design patterns where appropriate;
• Extract and interpret relevant runtime system resource information (disk IO, network, CPU, memory, etc) and take appropriate actions to optimise;
• Design and develop test frameworks and processes that can be used for different games systems and projects;
• Design and develop test frameworks and processes that can be used for different games systems and projects;
• Multi-thread algorithms;
• Contribute to cross-studio collaboration communications in conjunction with the Lead Programmer;
• Support the Lead Programmer in any ad-hoc tasks and duties.

Qualifications
Skills and Knowledge

• Excellent C/C++ programming skills, with excellent knowledge of object oriented development;
• Extensive knowledge of engine or middleware and associated pipeline;
• Deep understanding of software performance considerations, with ability to design and implement well performance systems/features;
• Significant knowledge of common algorithms, data structures and patterns, and their application;
• Proven ability to analyse unfamiliar code of a reasonable complexity to understand, extend and refactor functionality of an existing module;
• Proven ability to debug defects of a reasonable complexity, including memory related issues, multi-threading, and assembly level debugging;
• In-depth knowledge of different software development methods such as Test Driven Development, Unit Testing, Agile etc.;
• Knowledge of console platform submission requirements (TRCs, XRs, etc);
• Able to plan and estimate their own tasks and ensure timely delivery of work;
• Ability to anticipate and resolve problems;
• Ability to work as part of a team;
• Ability to adapt to change;
• Excellent communication skills in spoken and written English;
• Good interpersonal and communication skills;
• Ability to mentor others;
• Good analytical and synthesis skills;

Relevant Experience

• Bachelor's degree in computer science or computer engineering or equivalent experience;
• 6 years commercial software development experience with significant involvement in 2 published game in a UI programming capacity;
• Experience working with at least one modern console platform (e.g. PS4, XBox 1, Switch);
• Experience of designing, developing and debugging multithreaded systems;
• Experience profiling and optimization;
• Experience in software design patterns and UML;
• Experience with profiling tools such as PIX, Razor;
• Experience working in a multi-site collaboration enviroment is a plus;
• Experience with commonly used development tools such as Visual Studio and source control;

Additional Information

Salary: Competitive + Relocation
Location: Leamington Spa, U.K

Opening date: 7th November 2017
Closing date for applications: 6th December 2017

Reflections reserves the right to close this advert earlier than the closing date indicated should we feel we have received sufficient applications.

Additional Information

Contact Details:
Reflections, A Ubisoft Studio
Tel: .
Contact: Adam Knight
Email:

You may return to your current search results by clicking here.

Latest Job Listings