Présentation de l'équipeLes équipes Technologie d'Expedia travaillent en partenariat avec les équipes Produits pour créer des produits, des services et des outils innovants afin d'offrir des expériences de haute qualité aux voyageurs, aux partenaires et à nos employés. Une plateforme technologique unique, s'appuyant sur des données et l'apprentissage automatique, permet d'offrir des expériences sécurisées, distinctes et personnalisées qui favorisent la fidélisation et la satisfaction des voyageurs.
Au sein d'Expedia Product & Technology, notre organisation responsable du contenu est actuellement à la recherche d'un(e) développeur(-euse) de logiciels III pour travailler sur les capacités de notre plateforme de contenu. Ces fonctionnalités permettent à Expedia Group d'acquérir, d'enrichir et de diffuser des centaines de millions de ressources (images, textes, attributs, vidéos, etc.) utilisées par l'ensemble de nos marques et de nos secteurs d'activité. Lorsque vous planifiez un voyage sur les sites Web ou applications mobiles d'Expedia Group, la plupart des éléments de contenu que vous rencontrez ont été sélectionnés par nos systèmes afin d'ptimiser votre expérience!
Notre équipe se consacre à fournir des solutions logicielles hautement évolutives dans un environnement de développement agile, à l'aide de technologies de pointe. Notre culture d'entreprise favorise un environnement sécuritaire, propice à la créativité et à l'apprentissage et au développement continus. Notre travail consiste principalement à développer des applications dorsales. Nous adhérons à une approche selon laquelle nos développeurs participent à chaque étape du développement logiciel, soit de la conception aux tests, en passant par l'intégration, le déploiement, la surveillance et le soutien.
Dans ce rôle, vous aurez les responsabilités suivantes : - Concevoir, construire et faire évoluer des services dorsaux et des interfaces API pour la plateforme de contenu d'Expedia Group, en mettant l'accent sur la haute disponibilité, la résilience et la maintenabilité à travers plusieurs services et domaines.
- Mettre en œuvre des conceptions robustes de bas niveau, des contrats d'interfaces API et des modèles de données pour soutenir à grande échelle les flux de travail d'ingestion, de stockage, d'enrichissement et de distribution de contenu.
- Écrire du code propre, testable et bien documenté, incluant des tests complets d'unités, d'intégration et de contrat, et contribuer aux processus automatisés de déploiement et de lancement pour les services propriétaires.
- Diagnostiquer et résoudre des défauts complexes et des problèmes de performance dans les systèmes de production, participer aux rotations de garde et améliorer l'observabilité, la fiabilité et la réponse aux incidents pour les services de contenu.
- Collaborer avec les équipes Produit, Programme et d'autres équipes d'ingénierie pour traduire les exigences des affaires et du domaine de contenu en solutions techniques, tout en encadrant vos pairs par des révisions de conception, des révisions de code et le partage de connaissances.
- Intégrer et gérer de manière sécurisée des solutions basées sur l'intelligence artificielle (IA) et l'apprentissage automatique qui améliorent les résultats pour la qualité du contenu, la pertinence et l'automatisation, notamment grâce à une bonne connaissance des systèmes, outils ou flux de travail basés sur l'IA, ainsi qu'à l'application des concepts d'IA et d'apprentissage automatique à des produits concrets.
Compétences minimales requises : - Baccalauréat dans un domaine technique ou une expérience professionnelle équivalente, avec au moins 5 ans d'expérience professionnelle pertinente.
- Vous avez la capacité de détecter les problèmes commerciaux au niveau du projet et de préconiser des solutions pour les résoudre.
- Expérience en conception et réalisation de projets sur au moins 4 produits différents qui sont facilement testables et observables, et capacité avérée pour guider d'autres personnes dans cette démarche.
- Solides connaissances en matière de technologies (SpringBoot, interfaces API gRPC/REST/graphQL, AWS en nuage de préférence), de bases de données (NoSQL, moteurs de bases de données relationnelles, Redis/Valkey/MemcacheD de préférence) et de langages (Kotlin, Java de préférence).
- Expertise avérée en la matière pour certains produits liés à votre travail au cours de votre carrière.
- Capacité démontrée à optimiser la performance, l'évolutivité et la fiabilité des services grâce à une modélisation de données réfléchie, à des stratégies de mise en cache et à des améliorations d'observabilité pour des charges de travail à fort trafic ou à grand volume, et capacité à favoriser l'excellence opérationnelle entre services détenus.
- Bilinguisme en français et en anglais, un atout
Qualifications souhaitées : - Expérience dans la conception et l'évolution d'architectures dorsales multiservices ou au niveau du domaine pour des plateformes de contenu ou des systèmes similaires à grande échelle de données/métadonnées, incluant les interfaces API versionnées et l'évolution de schémas.
- Expérience avérée en matière de pilotage de la mise en œuvre technique de fonctionnalités ou de projets complexes, d'influence sur la conception des services et des interfaces API au sein des équipes, et de promotion des meilleures pratiques en matière de tests, de déploiement et de gestion des incidents pour les systèmes dorsaux.
- Familiarité avec les flux de travail de contenu ou de données pilotés par l'IA (tels que la classification, l'enrichissement, le classement ou la synthèse) et l'intégration et l'exploitation sécuritaire de solutions basées sur l'IA et l'apprentissage automatique qui améliorent la qualité du contenu, l'efficacité des développeurs ou les résultats clients.
- Expérience pratique dans l'application des concepts basés sur l'IA et l'apprentissage automatique dans des systèmes dorsaux à grande échelle, par exemple en intégrant avec des services d'IA internes ou externes, en optimisant les invites ou l'utilisation de modèles, ou en contribuant à l'expérimentation et à l'évaluation basée sur les données de fonctionnalités alimentées par l'IA, y compris la familiarité avec les systèmes, outils ou flux de travail pilotés par l'IA et l'application des concepts basés sur l'IA et l'apprentissage automatique à des produits réels.
Veuillez noter que ce poste n'est disponible qu'à Montréal, conformément à notre modèle de travail flexible qui exige que les employés travaillent en présentiel au bureau au moins trois jours par semaine. Nous ne sommes pas en mesure d'offrir une aide à la relocalisation pour ce poste.
L'échelle salariale totale pour ce poste à Montréal se situe entre
108 000 $ et 152 000 $. Les employés qui occupent ce poste pourraient augmenter leur salaire jusqu'à 173 500 $, ce qui représente le salaire maximal, en fonction de leur rendement continu, démontré et soutenu dans le poste.
Le salaire de départ pour ce poste variera en fonction de plusieurs facteurs, notamment le lieu de travail, le budget disponible ainsi que les connaissances, les compétences et l'expérience de la personne. Les échelles salariales pourraient être modifiées à l'avenir.
Expedia Group est fière d'offrir une large gamme d'avantages sociaux pour soutenir les employés et leurs familles, y compris les soins médicaux, les soins dentaires, les soins de la vue, ainsi que des congés payés et un programme d'aide aux employés. Afin d'alimenter la passion de chaque employé pour les voyages, nous offrons un remboursement des frais de bien-être et de déplacement, des réductions sur les voyages et une adhésion à l'International Airlines Travel Agent Network (IATAN). Consulter la liste complète des avantages
Introduction to TeamOur Technology Team partners with teams across Expedia Group to create innovative products, services, and tools to deliver high-quality experiences for travelers, partners, and our employees. A singular technology platform powered by data and machine learning provides secure, differentiated, and personalized experiences that drive loyalty and traveler satisfaction.
This Software Developer III role is part of the Content team which sits within our Technology division. The Content team designs, builds, and optimizes the services and tooling that power high-quality, scalable content experiences across our marketplace, enabling travelers and partners to access clear, accurate, and engaging information at every step of their journey. In this role, you will use your software development expertise to deliver reliable, high-impact solutions that improve how content is created, managed, and served to millions of users worldwide.
In this role, you will:
- Design, build, and maintain backend services and APIs in Java that are reliable, secure, and scalable to support high-volume travel data and transactions.
- Translate functional and non-functional requirements into clear low-level designs, including API contracts, data models, and integration patterns across services.
- Implement high-quality, well-tested backend code, including unit, integration, and contract tests, and participate in code reviews to maintain engineering quality standards.
- Own the operational health of the services you build, including monitoring, alerting, incident participation, and continuous improvement of performance, reliability, and resilience.
- Collaborate with product managers, architects, and cross-functional teams to deliver backend features that are reusable across multiple domains and can be safely integrated into complex systems.
- Familiarity with AI-driven systems, tools, or workflows and applying AI/ML concepts to real world products, including safely integrating and operating AI/ML-enabled backend solutions that improve business and customer outcomes.
Minimum Qualifications:
- Bachelor's degree in Computer Science or a related technical field; or equivalent related professional experience.
- 5+ years of relevant professional experience.
- Professional experience as a backend or software developer using Java in a production environment, including building and supporting at least one significant service or application.
- Hands-on experience designing and developing RESTful APIs, low-level system components, and data models using relational or NoSQL databases for a defined service or set of services.
- Solid understanding of core backend engineering concepts such as object-oriented design, data structures, algorithms, concurrency, and secure coding practices, and experience owning the full lifecycle of a backend service (design, implementation, testing, deployment, and basic operations) within a team environment.
Preferred Qualifications:
- Experience building and evolving Java-based microservices or service-oriented architectures that operate at scale with high availability and low latency.
- Demonstrated ability to improve service reliability and operational exc