This job might no longer be available.
Developpeur de Logiciels - C++ / Software Programmer - C++
4 years ago
ENGLISH FOLLOWING
Nous sommes EA — le premier diffuseur de jeux vidéo au monde. Vous connaissez probablement bon nombre de nos titres : FIFA, Battlefield, Madden, Battlefront, Les Sims, Need for Speed, Plants vs Zombies et Star Wars Galaxy of Heroes, pour ne nommer que ceux-ci. Mais vous ignorez peut-être combien nous sommes dévoués à la création de jeux pour toutes les plateformes – des réseaux sociaux aux appareils mobiles en passant par les consoles – afin de donner aux consommateurs l’accès en tout temps et en tout lieu qu’ils demandent. Qu’est-ce que cela signifie pour vous? Cela signifie de nombreuses possibilités de laisser libre cours à votre génie créatif, de vous laisser inspirer par les gens qui vous entourent et de donner vie à votre parcours, quelle que soit la direction choisie.
APERÇU DU RÔLE
Notre équipe Services de développement central (CDS) chez Electronic Arts est au cœur de la vision et de l’exécution des outils et des technologies qui favorisent une qualité de renommée mondiale. Le groupe est à l’avant-plan des technologies et des outils émergents qui permettent à nos équipes d’améliorer la qualité et l’efficacité de leur création et de leur code. Sous une même équipe, les membres repoussent les limites et contribuent à faire évoluer la fonction Qualité en un rôle vif, préventif et novateur, plutôt qu’un rôle exclusivement de détection.
L’équipe est à la recherche d’un développeur logiciel chevronné qui contribuera à réinventer la façon dont EA recueille et optimise les données liées à notre processus de développement. Ce spécialiste aura l’occasion de redéfinir les processus à l’échelle de EA et de voir ses efforts toucher le travail quotidien de chaque membre de nos équipes de développement et de qualité, pour chaque titre de EA. Mais ce n’est que le début. Le candidat aura également la chance de faire valoir son caractère novateur, en définissant non seulement les technologies qui favoriseront l’expansion et la croissance de notre cadre de travail actuel, mais en inventant également son propre cadre, puisque nos travaux ont été brevetés à plusieurs reprises par le passé.
Le rôle fait appel à un type de personnalité extravertie, dynamique, enthousiaste et capable de réseauter parmi les groupes et les personnes afin de faire partie intégrante d’une plus grande communauté. Joignez-vous à nous et contribuez à redéfinir la façon dont EA crée des jeux.
RÔLE DE L’INGÉNIEUR LOGICIEL :
- Développer et maintenir l’automatisation, les outils et les services pour de multiples projets
- Rédiger et maintenir un code extensible, testable, versionné et documenté
- Effectuer les examens de code et accepter d’être jumelé régulièrement à d’autres membres de l’équipe aux fins de mentorat
- Maintenir les outils, l’intégration et les technologies pour favoriser un environnement hautement fiable
- Contrôler l’utilisation des outils/services et évaluer le rendement du capital investi
- S’approprier tous les aspects d’un outil ou d’un service en collaborant avec les clients et les chefs techniques pour atteindre l’objectif stratégique de la société
- Comprendre et respecter les processus standard du génie logiciel et des meilleures pratiques à l’égard des besoins, de la conception, de la mise en œuvre et des tests
- Faire régulièrement état des tâches assignées et cibler proactivement les risques et les problèmes éventuels du projet
- Superviser la satisfaction des clients et transférer les problèmes ou occasions d’amélioration à l’échelon supérieur
- Assurer une communication constante d’avant-plan avec tous les clients
- Déterminer des étapes clés réalistes et chercher à les atteindre
- Contribuer aux stratégies et initiatives d’ingénierie de la société
- S’il y a lieu, intégrer des systèmes et des outils dans le code de jeu de la production ou d’un partenaire de façon contrôlée et professionnelle
COMPÉTENCES REQUISES :
- Au moins 4 ans d’expérience technique dans l’industrie, y compris un minimum de 2 ans d’expérience dans le développement d’applications client-serveur, d’applications ou de services Web
- Expérience avec .NET (ASP.NET, .NET MVC, .NET Core, etc.) et en développement C#
- Expérience en développement C++, particulièrement dans les applications client-serveur
- Expérience de conception et de mise en œuvre de tests unitaires et fonctionnels, particulièrement dans des environnements de systèmes distribués
- Baccalauréat ou diplôme supérieur en informatique, en ingénierie ou en ingénierie logicielle ou combinaison équivalente d’études et d’expérience
- Capacité de travailler de façon autonome sous une supervision minimale externe et avec un accent sur la résolution de problèmes complexes à l’échelle des systèmes multiples
- Aptitude pour le travail multitâche, l’établissement de priorités et la souplesse – capacité d’adapter les plans et de réagir aux changements, de déléguer les responsabilités et le triage aux autres spécialistes de leur équipe en tant que leader
- Forte volonté d’innover et d’apprendre, d’agir rapidement et d’expérimenter de nouvelles solutions
ATOUTS :
- Expérience de travail dans des cadres de tests unitaires comme xUnit et Moq un fort atout
- Expérience de travail avec des systèmes distribués et familiarité avec les concepts d’informatique distribuée (fils d’attente de messages, découverte de services, conteneurisation, etc.) un atout
- Expérience de développement de systèmes multifililères ou simultanés un atout
- Expérience avec les concepts de programmation fonctionnels au moyen des langues comme Scala, F#, Erlang ou autres, ou volonté de les apprendre un atout
- Expérience de développement de jeux vidéo, de systèmes en temps réel ou de logiciel intégré un atout
***
We’re EA —the world’s largest video game publisher. You’re probably familiar with many of our titles—FIFA, Battlefield, Madden, Battlefront, The Sims, Need for Speed, Plants vs Zombies and Star Wars Galaxy of Heroes, to name a few. But maybe you don’t know how we’re committed to creating games for every platform—from social to mobile to console—to give our consumers that anytime, anywhere access they demand. What does that mean for you? It means more opportunities to unleash your creative genius, be inspired by those around you and ignite your path in any direction you choose.
ROLE OVERVIEW
Tasked with envisioning and executing on tools and technologies that drive world-class quality is our Central Development Services (CDS) team at Electronic Arts. This group is on the forefront of emerging technologies and tools that enable our teams to create and code better and more efficiently. Working as one team they are pushing the envelope and evolving the Quality function, designed to be nimble, innovative and preventive, rather than solely detective.
We are looking for an experienced Software Developer to join our team and help reinvent the way EA collects and leverages data related to our development process. This engineer will have the opportunity to redefine workflows across EA, with their work touching every single member of our development and quality teams daily work, on every EA title. But our work is just getting started, and this developer will have the chance to be innovative, with the opportunity to not only define the technologies that expand and grow our existing framework, but also invent their own, as our work has been patented multiple times in the past.
The role requires a personality type that is outgoing, dynamic, enthusiastic and able to network across of groups and individuals to be part of a larger community. Join us and help redefine the way EA makes games.
AS A SOFTWARE ENGINEER YOU WILL:
- Develop and maintain automation, tools and services for multiple projects.
- Write and maintain scalable, testable, versioned, and documented code.
- Perform code reviews and be willing to pair and mentor other team members regularly.
- Maintain tools, integration, and technologies to support highly reliable environment.
- Monitor tools/service usage and assess return on investment.
- Own all aspects of a tool or service, working with customers and technical leads to achieve the company’s strategic goal.
- Understand and follow standard software engineering processes and best practices for requirements, design, implementation and testing.
- Report regular status against assigned tasks and proactively identify project risks and issues.
- Monitor customer satisfaction and escalate any issues or improvement opportunities.
- Continuous, front-line communication with all customers.
- Set realistic milestones and work towards successful completion.
- Contribute to the company’s engineering strategies and initiatives.
- Where applicable, integrate systems and tools into partner or production game code in a controlled, professional manner.
YOU WILL NEED:
- A minimum of 4+ years of technology industry experience, including a minimum of 2+ years of experience developing client-server applications, web applications and/or services.
- Experience with .NET (ASP.NET, .NET MVC, .NET Core, etc.) and C# development
- Experience with C++ development, particularly in client-server applications.
- Experience with unit and functional test design and implementation, particularly in distributed systems environments.
- Bachelor’s degree or higher in Computer Science, Engineering or Software Engineering or equivalent combination of education and experience.
- Ability to work independently with minimal outside supervision with a focus on solving complex problems across multiple systems.
- Ability to multi-task, prioritize and be flexible – able to adapt plans and react to change, capable of delegating responsibility and triage to other engineers on their team as a leader.
- A strong desire to innovate and learn, move quickly, and be experimental in solutions.
BONUS POINTS FOR:
- Experience working with unit testing frameworks like xUnit and Moq a strong plus
- Experience working with distributed systems and familiarity with distributed computing concepts (message queues, service discovery, containerization, etc.) is a plus
- Experience developing multi-threaded or concurrent systems a plus
- Experience or desire to learn functional programming concepts through languages such as Scala, F#, Erlang, or others is a plus
- Experience with Video Game, Real-time System or Embedded Software development is a plus
Create Your Profile — Game companies can contact you with their relevant job openings.