Engineering
Programmeuse, Programmeur Online - Rainbow Six Siege
Ubisoft
Montreal, Québec, Canada
Full-time, Associate
Remote: No
Full-time, Associate
Remote: No
Company Description
Job Description
Ce que vous ferez
- Compiler et comprendre les intentions réseau/en ligne du projet et définir les besoins en matière de développement;
- Proposer des améliorations lorsque nécessaire en concevant et en mettant en œuvre des nouveaux systèmes;
- Programmer de façon claire et structurée en tenant compte des critères de performance, d’entretien, d’évolutivité, d’opérabilité et de compatibilité;
- Valider et vérifier si les nouveaux systèmes répondent aux intentions du projet et s’ils sont cohérents avec le code existant;
- Optimiser si nécessaire;
- Documenter le travail pour assurer le transfert des connaissances et permettre aux utilisateurs (programmeurs, collègues de d’autres métiers) de comprendre les nouveaux systèmes réseau/en ligne et les fonctions;
- Rechercher et effectuer la correction des bogues réseau/en ligne identifiés par les autres métiers et l’équipe de contrôle de la qualité;
- Collaborer avec le directeur créatif, les concepteurs de jeu et les autres équipes si nécessaire pour discuter des contraintes et déterminer les possibilités techniques pour les différents fonctions réseau/en ligne;
- Assurer le soutien des fonctions réseau/en ligne et des systèmes pour la production et les opérations réelles;
- Analyser les fonctions réseau/en ligne existantes dans le moteur et vérifier si elles répondent aux intentions du projet;
- Effectuer toutes autres tâches connexes.
Job Qualifications
Ce que vous apportez :
Formation :
- Baccalauréat en informatique ou en génie informatique ou formation pertinente.
Expérience pertinente :
- Minimum de 1 à 3 années d’expérience en programmation en ligne, idéalement dans le domaine du jeu vidéo ou toute autre expérience pertinente.
Habiletés :
- Bon esprit d’analyse et de synthèse
- Capacité à rédiger de la documentation relative à la conception (UML, diagrammes de séquence, diagrammes entité, etc.)
- Capacité à résoudre des problèmes
- Autonomie et débrouillardise
- Sens du détail
- Bonnes habiletés relationnelles et de communication
- Capacité à travailler en équipe
- Capacité à s’adapter aux changements
- Être orienté résultats
Connaissances :
- Protocoles (IP, UDP, TCP) et usage courant (Upnp, VoIP)
- Cryptage, compression
- Expérience pratique et compétences en concepts et en technologies en ligne
- Sinon fonctionnalités en ligne et SDK des 1st party
- Formes asynchrones
- Technologies et services en ligne d’Ubisoft (intégrateurs, utilisateurs)
- Tolérance de pannes
- Sécurité, anti-triche, etc.
- C++, Python, C#, SQL et tous autres langages pertinents pour le projet
- Dispositifs LAN/WAN, couches et difficultés de connectivité
- Moteurs réseau
- Connaissance des bases de données
- Nuage/élasticité
- Architecture de serveurs, communications serveur-à-serveur, application distribuée
- Piles (internes et externes, ex. IIS, structure App Engine)