22 Oct
|
Ubisoft
|
Montreal
Ce que vous ferez
À titre de
Lead Technique
vous agirez comme référence technique pour les systèmes multijoueurs, l'architecture réseau, la réplication des états de jeu, les technologies de serveurs dédiés et les services en ligne. Vous définirez la stratégie technique à long terme des systèmes réseau tout en dirigeant une équipe de programmeur·euse·s responsable de livrer des expériences multijoueurs performantes, évolutives et sécurisées.
Vous contribuerez à des décisions architecturales ayant un impact sur des millions de joueurs, en conciliant les exigences de jouabilité, la performance des serveurs, l'évolutivité, la fiabilité, la sécurité et les coûts d'exploitation. Vous collaborerez étroitement avec les équipes de gameplay, moteur, services en ligne, sécurité, données, production et opérations en direct afin de garantir une expérience en ligne répondant aux plus hauts standards de qualité et de compétitivité.
Dans l'esprit du rôle de Lead Technique chez Ubisoft, vous serez responsable de définir la vision technique, d'assurer la supervision technologique des systèmes sous votre responsabilité, de soutenir le développement des talents et d'agir comme expert·e de confiance au sein de l'organisation.
Responsabilités principales
Vision technique et architecture
Définir et porter la feuille de route de l'architecture réseau pour les projets actuels et futurs.
Établir les stratégies à long terme concernant :
La réplication de l'état du jeu
Les modèles d'autorité serveur
La prédiction côté client et les mécanismes de réconciliation
La compensation de latence (lag compensation)
L'intégration des systèmes de matchmaking
Les infrastructures en ligne
Les services de jeu distribués
Prendre les décisions techniques critiques liées aux architectures serveur, aux cadres technologiques réseau et aux intégrations backend.
Évaluer les compromis techniques entre la latence, la bande passante, l'évolutivité, la sécurité et la vitesse de développement.
Veiller à ce que les systèmes réseau demeurent évolutifs tout au long du cycle de vie du jeu en service.
Gouvernance des systèmes multijoueurs
Assurer la responsabilité de l'architecture et de l'évolution :
Des serveurs de jeu dédiés
Des systèmes de réplication
De la gestion des sessions
Des intégrations de matchmaking
Des intégrations avec les services backend
Des fonctionnalités multijoueurs multiplateformes
Définir les budgets de performance et les bonnes pratiques en matière de réseautique.
Piloter les initiatives visant à améliorer la stabilité des serveurs, leur disponibilité et leur efficacité opérationnelle.
Diriger les analyses et investigations liées aux problèmes systémiques affectant l'expérience de jeu en ligne.
Garantir que les systèmes réseau soutiennent les ambitions futures de gameplay sans nécessiter de refonte majeure.
Performance et évolutivité
Définir les objectifs de performance pour :
Les taux de rafraîchissement des serveurs (tick rate)
La consommation de bande passante
L'utilisation du processeur (CPU)
L'utilisation de la mémoire
Les coûts liés à la réplication
Les temps de réponse des services
Analyser les données de télémétrie à grande échelle ainsi que les indicateurs de production.
Diriger les initiatives d'optimisation pour des environnements multijoueurs à fort volume.
Développer des stratégies soutenant la croissance de la population de joueurs et l'évolution des besoins d'infrastructure.
Collaborer avec les équipes d'Opérations en direct et de Services en ligne afin d'assurer la santé et la performance des services.
Fiabilité et sécurité
Définir les standards de résilience, de disponibilité et de tolérance aux défaillances.
Mettre en œuvre des initiatives visant à réduire les interruptions de service et les périodes d'indisponibilité.
Collaborer avec les équipes de sécurité pour prévenir et mitiger :
Les exploitations de vulnérabilités
La manipulation de paquets réseau
Les tentatives de contournement de l'autorité serveur
Les vecteurs de triche
Les abus de service
Définir les pratiques sécuritaires en matière de communication réseau à l'échelle du projet.
Participer aux réponses aux incidents ainsi qu'aux analyses de causes racines lors d'enjeux majeurs en production.
Leadership et mentorat
Encadrer et développer les programmeur·euse·s spécialisés en réseau et systèmes en ligne.
Accompagner les ingénieur·e·s dans leur progression vers des rôles seniors ou d'expertise.
Réviser les architectures, conceptions techniques et revues
📌 Chef.fe technique senior du développement (Montreal)
🏢 Ubisoft
📍 Montreal