Job Description
Ubisoft Halifax is looking for a new addition to our Programming Team! As a generalist developer, you will work closely with our game team to design, implement and maintain new game features, game systems, engine features and fix bugs and third-party SDKs.
Our studio is looking for an enthusiastic developer who loves games as much as the technology that drives them. This person will bring their curiosity, ingenuity, ongoing personal development, to a small, diverse, and close-knit team. A sense of humour is required!
Qualifications
Key Accountabilities
- Planning, designing, and implementing efficient and maintainable code in C++, and / or C# with modern game engines.
- Designing and programming game systems that meet production goals and follow SOLID principles.
- Learning how to use Ubisoft’s internal engines quickly and efficiently with lots of support but minimal supervision.
- Meeting time commitments to design, develop and / or optimize gameplay features on mobile projects.
- Documenting existing systems and performing analysis on legacy systems to figure out optimizations and improvements.
- Communicating implementation decisions both verbally and in documentation to key stakeholders
- Implementing 3rd party SDKs into game projects
- Aiding more junior developers with coming up to speed quickly.
- Porting existing code bases to multiple new platforms
- Working with CI / CD pipelines and cloud-based workflow.
Autonomy
Prioritize effectively and be able to recognize and report tasks that require immediate attention throughout development.Ability to estimate and communicate time frames, schedule tasks and draw attention to unexpected delays as the come upRequirements :
A graduate degree in Computer Science, Computer Engineering, diploma, or equivalent work experienceAt least 2 years of experience in cross-platform development using a modern game engine on Android and / or iOS platforms.A strong drive to problem solve, uncover the mysterious and learn new tools and languages.Experience with Live and Online-related SDKs or implementations in third party engines (telemetry, IAPs, cloud saves, data storage).Some experience with DevOps, web development and server side / back end developmentStrong proficiency with object-oriented programming and debugging in C++Experience withnix based environments and working in terminal CLI tools.Excellent knowledge of evolving software engineering best practicesAbility to work effectively and autonomously with little direction.Be a strong team player with the ability to interface with other team members and an enthusiasm for game development.Excellent written and oral communication skillsDemonstrated interest in self-improvement, skill development and the ability to take direction and function as part of a teamHigh level experience with source control such as git and / or PerforceA positive attitude and a good sense of humour is required.Bonus :
Shipped a title, app or demo on iOS or AndroidExperience developing a game in Unity and / or UnrealExperienced at least 2 game development cycles in a commercial environmentProficient in game physics and related mathematicsExperience maintaining code performance through profiling and optimizationProficient in scripting languages (LUA, Python, etc.)