Senior Software Engineer - UI
Founded in 1986, Codemasters has a long-standing reputation as one of the premier game developers in the industry. At the heart of Codemasters is the official Formula One game ™, one of the most critically acclaimed sporting franchises of the last decade. Our Global team brings together a diverse team including artists, engineers, and designers who are motivated by a passion for creating exceptional gaming experiences.
This role can be located in our Birmingham office on site, or worked hybrid/remotely. Our UI Engineers help bring the game's rich 2D and 3D UI screens to life and are responsible for all technical aspects of UI features, including frontend screens, in-game HUD elements, user interactions and overall user experience. The focus is on delivering the vision of the UI art and design teams to build compelling interfaces to our games. This role can be located in our Birmingham office on site, or worked hybrid/remotely.
Reporting to a Lead engineer or Technical Director you will
- Take an active part in developing technical designs and implementations for large UI features.
- Implement high-quality code in a large codebase, within a cross discipline agile team and maintain and extend existing code in UI areas, collaborating with other feature teams.
- Work with your lead, the design, UI art and production teams to evaluate the technical feasibility of features, contribute to and evaluate technical documentation and help define and manage scope.
- Test and refine features and help automate feature testing.
- Work with and support engineers in other disciplines with the features you work on.
- Provide and review estimates for feature development and report these to the team.
- Help to identify technical debt in multiple areas of the code.
- Provide support to develop junior developers
- Help guide the underlying UI technology forward with the UI systems group.
Here's what you will need:
- Expert C++ knowledge (4+ years).
- Knowledge of general UI related programming.
- UI design patterns (MVVM in particular).
- Experience with debugging and profiling tools.
- Finite state machines.
Here's what we'd like you to have:
- Cross platform and console development experience.
- Scrum and Agile processes.
- A degree in a relevant subject (e.g. Maths/Physics/CS/Game Tech), or comparable relevant experience.