Programmeur.se De Serveur Senior / Senior Server Programmer

Montréal, QC, CA, Canada

Job Description

Overview:

Viens te joindre a l'equipe de

Bethesda Game Studios

, l'equipe primee de developpement derriere

Starfield

,

The Elder Scrolls

et

Fallout

. Bethesda Game Studios fait tout pour offrir a ses employes une vie familiale et professionnelle bien equilibree en offrant des salaires competitifs, un programme d'avantages sociaux genereux et des bureaux situes parmi les meilleures villes d'Amerique du Nord.

Dans le but de creer une culture aussi amusante et diversifiee que nos jeux et nos joueurs, nous accueillons des personnes possedant des competences, des niveaux d'experience et des antecedents uniques. Si tu es allume(e) par l'idee d'apporter ta contribution a certains des jeux les plus importants de l'industrie, on adorerait en savoir plus sur toi!

Nous considerons des candidatures pour n'importe lequel de nos quatre bureaux de Bethesda Game Studios : Rockville, MD ; Montreal, Quebec ; Austin, TX ; Dallas, TX.

///

Come join

Bethesda Game Studios

, the award-winning development team behind

Starfield

,

The Elder Scrolls

and

Fallout

. Bethesda Game Studios strives to offer its employees a well-balanced home and work life by providing competitive salaries, a generous benefits program, and offices located in some of North America's best cities.

With a goal of creating a culture as fun and diverse as our games and our players, we welcome applicants with unique skillsets, experience levels and backgrounds. If you are passionate about making a meaningful contribution to some of the most significant games in the industry we'd love to hear from you!

We will consider candidates for any of our four Bethesda Game Studios office locations: Rockville, MD; Montreal, Quebec; Austin, TX; Dallas, TX.
Responsibilities:

Ton quotidien chez Bethesda Game Studios


Dans ton role de

Programmeur.se de serveur senior

, tu vas...Implementer, guider et revoir la technologie client/serveur/moteur pour Fallout 76 Te familiariser rapidement avec les systemes du jeu dans notre moteur client/serveur Surveiller, corriger et ameliorer la performance et la stabilite du jeu Collaborer etroitement avec l'equipe de developpement pour integrer des technologies systeme/moteur soutenant les nouvelles fonctionnalites du jeu Etre responsable de la gestion de la memoire, du reseau, de la persistance, des systemes asynchrones et de la gestion des etats dans Fallout 76 Diriger les communications client-serveur, les systemes de synchronisation, la validation client/serveur et la securite Developper et maintenir la technologie de base du moteur sur laquelle reposent les systemes de gameplay Resoudre des bogues complexes, des problemes, des dilemmes architecturaux ou des enjeux d'optimisation Faire des revues de code et encadrer les membres plus juniors de l'equipe Gerer ton temps de maniere autonome et prioriser ton travail selon le retour sur investissement et les risques

Your Daily Life at Bethesda Game Studios


As

Senior Server Programmer

, you will...Implement, guide, and review client/server/engine tech for Fallout 76 Easily dive in and become familiar with the game systems in our client/server engine Monitor, fix, and improve the performance and stability of the game Work closely with the game team to add system/engine level tech to support new game features Own memory management, network, persistence, asynchronous systems, and state management systems in Fallout 76 Drive client server communications, synchronization systems, client/server validation, and security Develop and maintain foundational level engine tech that gameplay systems rely on Solve difficult bugs, problems, architectural dilemmas, or optimization issues Code review and mentor more junior team members Manage your time effectively with little to no guidance and prioritize work based on ROI and risk
Qualifications:

Qu'est-ce qui te rend S.P.E.C.I.A.L. ?

Tu possedes entre 5 et 10 ans d'experience en programmation, principalement dans les jeux AAA et le developpement de systemes/moteurs en C++ Tu maitrises les fonctionnalites de jeu en reseau et comprends les complexites du gameplay en ligne (replication d'etat, comportements, physique, repartition client/serveur des fonctionnalites et systemes de jeu) Tu as travaille sur des systemes client/serveur a grande echelle (idealement dans des jeux AAA) Tu es expert(e) en programmation asynchrone (threadee, entre les frames ou entre les processus via un reseau) Tu as une solide experience avec les jeux bases sur des services Tu as deja concu ou ete responsable d'une grande partie d'une architecture client/serveur Tu as de l'experience avec des systemes de persistance soutenus par differentes bases de donnees Tu as code et/ou revise la majorite des competences listees ci-dessous Tu as une experience significative dans des environnements Linux, incluant l'administration systeme de base et la gestion de la performance Tu es a l'aise avec l'architecture cloud AWS et Azure ainsi que les principes DevOps Tu detiens un Baccalaureat (ou plus) en informatique ou une experience equivalente

What Makes You S.P.E.C.I.A.L.

You bring 5-10 years of programming experience, primarily in AAA games and systems/engine-level development using C++. You demonstrate deep expertise in networking game features and awareness of the complexities of networked gameplay (replication of state, behaviors, physics, client/server breakdown of features and game systems) You have worked on large scale client/server systems (preferably in AAA games) You are an expert in programming in an asynchronous environment whether that be threaded, across frames, or across processes via a network You bring significant experience with service-based games You have previously written or owned a major part of a client/server architecture You have experience with persistence systems backed by different flavors of databases You have been responsible for coding and/or reviewing the code for most of the

Skills

listed below You have significant experience working in a Linux based environment including basic system administration and performance management You are familiar with Cloud Architecture in AWS and Azure and DevOps principles You have a B.S. (or higher) in Computer Science, or equivalent work experience.

Preferred Skills:

Qu'est-ce qui te rend extra S.P.E.C.I.A.L. ?

Programmation:

Excellente maitrise des fondements en informatique : modeles de conception, algorithmes, gestion de la memoire/des etats/des objets, compilation, execution, traitement asynchrone en C++ Comprehension approfondie des principes de la programmation orientee objet, incluant la composition vs l'heritage et les principes SOLID appliques aux systemes de jeu en C++ Expertise en programmation asynchrone et en applications reseau Maitrise des systemes de gestion de la memoire Experience avec un ou plusieurs langages de script : Python, Lua, Bash, Golang ou C#

Client/Serveur/Multijoueur:

Expertise des systemes de synchronisation bases sur UDP et TCP Maitrise des systemes de surveillance et de journalisation Connaissance des techniques pour masquer la latence et offrir un jeu fluide Maitrise des techniques de validation d'etat du jeu tout en maintenant une experience transparente

Competence en plateformes infonuagiques:

Experience avec les principales plateformes cloud : AWS, Azure, Google Cloud Familiarite avec les services et technologies offerts dans Azure et AWS

Competence en bases de donnees:

Connaissance des bases de donnees MySQL, MongoDB et de leurs variantes, avec capacite d'optimisation et d'ajustement Maitrise des schemas et des methodologies de mise a l'echelle Maitrise des langages de requete

Competence Linux/Windows/Console:

Capacite a diagnostiquer les problemes de performance et de connectivite sur Linux et Windows Maitrise des outils de profilage adaptes a chaque plateforme Expertise en debogage sur plusieurs plateformes

DevOps et automatisation:

Experience avec les pipelines CI/CD et les outils tels que Jenkins, Git, Perforce et Team City Maitrise de la gestion des branches

Bonus

Experience en developpement C++ avec des outils de pipeline Experience en gameplay ou en graphismes

What Makes You Extra S.P.E.C.I.A.L.

Programming

Expert computer science fundamentals including design patterns, algorithms and algorithmic complexity, memory management, state/object management, compilation, execution, and asynchronous processing and how all these apply to game systems in C++ Expert understanding of OO principles including application of composition vs inheritance as well as SOLID principles as it applies to game systems in C++ Expertise in async programming principles and networked applications Expertise in memory management systems Expertise with one or more scripting-oriented languages like Python, Lua, Bash, Golang, or C#

Client/Server/Multiplayer

Expertise in UDP and TCP based synchronization systems Expertise with monitoring and logging systems and how to use efficiently Expertise in how to 'hide the latency' and produce smooth seamless gameplay in a networked environment Expertise in game state validation techniques that still maintain seamless gameplay


Cloud Platform Proficiency

Experience with major cloud platforms such as AWS, Azure, and Google Cloud and how to work within a cloud-based environment Familiarity with major services and technologies available in Azure and AWS


Database Proficiency

Database knowledge of basics for different database types (MySQL and variants and Mongo and variants) to the degree you can optimize and tune from the developer perspective Knowledge of database schema and scaling methodologies to further optimization and scale Proficiency in database query languages


Linux/Windows/Console Proficiency

Ability to diagnose performance and connectivity Linux and Windows related issues Expertise in profiling across platforms with tools suited to each platform Expertise in debugging across multiple platforms




DevOps and Automation

Experience with Continuous Integration/Continuous Delivery (CI/CD) pipelines and tools like Jenkins, Git, Perforce, and Team City Expertise in branch management

Bonus Skills

C++ development experience with development pipeline tools Gameplay or Graphics experience

Applicant Privacy Notice:

ZeniMax Media Canadian Applicant Privacy Notice - English
ZeniMax Media Canadian Applicant Privacy Notice - FR CA
E-Verification Notice:

E-Verify_Participation_Poster

Beware of fraud agents! do not pay money to get a job

MNCJobz.com will not be responsible for any payment made to a third-party. All Terms of Use are applicable.


Job Detail

  • Job Id
    JD2806618
  • Industry
    Not mentioned
  • Total Positions
    1
  • Job Type:
    Full Time
  • Salary:
    Not mentioned
  • Employment Status
    Permanent
  • Job Location
    Montréal, QC, CA, Canada
  • Education
    Not mentioned