Online Programmer - Online Services

Montreal

Offre publiée le 2026-02-20

Ubisoft

Job Description

What You Will Do

  • Compile and understand the project’s network/online intentions and define development needs.
  • Propose improvements when necessary by designing and implementing new systems.
  • Program in a clear and structured manner while considering performance, maintainability, scalability, operability, and compatibility criteria.
  • Validate and verify whether new systems meet the project’s intentions and are consistent with the existing code.
  • Optimize when needed.
  • Document your work to ensure knowledge transfer and help users (programmers, colleagues from other disciplines) understand the new network/online systems and functions.
  • Investigate and fix network/online bugs identified by other teams and by quality control.
  • Collaborate with the creative director, game designers, and other teams as needed to discuss constraints and determine technical possibilities for various online/network features.
  • Provide support for online/network features and systems during production and live operations.
  • Analyze existing network/online features in the engine and assess whether they meet the project’s intentions.
  • Perform any other related tasks.

Qualifications

What You Bring

Education:

  • Bachelor’s degree in Computer Science or Computer Engineering, or other relevant training.

Relevant Experience:

  • Minimum of 1 to 3 years of experience in online programming, ideally in the video game industry or any other relevant experience.

Skills:

  • Strong analytical and synthesis skills
  • Ability to write documentation related to design (UML, sequence diagrams, entity diagrams, etc.)
  • Problem-solving skills
  • Autonomy and resourcefulness
  • Attention to detail
  • Strong interpersonal and communication skills
  • Ability to work in a team
  • Ability to adapt to change
  • Results-oriented

Knowledge:

  • Protocols (IP, UDP, TCP) and common uses (UPnP, VoIP)
  • Encryption, compression
  • Hands-on experience and skills in online concepts and technologies
  • Otherwise, experience with online features and first-party SDKs
  • Asynchronous forms
  • Ubisoft’s online technologies and services (integrators, users)
  • Fault tolerance
  • Security, anti-cheat, etc.
  • C++, Python, C#, SQL, and any other languages relevant to the project
  • LAN/WAN devices, layers, and connectivity challenges
  • Network engines
  • Knowledge of databases
  • Cloud/elasticity
  • Server architecture, server-to-server communication, distributed applications
  • Stacks (internal and external, e.g., IIS, App Engine architecture)