Principal Web RTC Software Developer - Développeur de logiciels principal WebRTC

Nuance - Montréal, QC (5 months ago)

Apply Now

Company Overview / Présentation de l’entreprise:
Chez Nuance, nous donnons aux gens la possibilité d'interagir naturellement avec leurs divers appareils connectés et le monde numérique autour d'eux. Nous créons un monde où la technologie pense et agit de la façon dont les humains le font en concevant des modes d'interaction avec la technologie plus intuitifs.

Notre technologie agile utilise des analyses et des algorithmes avancés pour transformer l'inanimé en animé et transformer des processus complexes en processus simples.

Rejoignez notre équipe entreprise ... un excellent service à la clientèle commence ici. Nous concevons des assistants virtuels facilitant le service client intelligent. Les clients de diverses compagnies peuvent maintenant facilement trouver les informations dont ils ont besoin en utilisant tous les canaux qu'ils préfèrent.

At Nuance, we empower people with the ability to seamlessly interact with their connected devices and the digital world around them. We are creating a world where technology thinks and acts the way people do by designing the most human, natural, and intuitive ways of interacting with technology.

Our nimble technology uses analytics and advanced algorithms to transform the inanimate into animate and reduce complicated processes into simple ones.

Join our Enterprise team…great customer service starts here. We design virtual assistants for intelligent and effortless customer service helping customers find the information they need using whatever channel they prefer.

Job Summary / Sommaire du poste:
English will follow...

Résumé : Cette personne se joindra à l'équipe de R&D pour la plateforme d'engagement numérique de Nuance. Cette équipe est responsable de la conception et du développement de la plateforme d’engagement numérique de Nuance.

Responsabilités :
Produire du code de haute qualité et bien documenté pour diverses composantes de plate-forme dans de multiples langages de programmation, en mettant l'accent sur le WebRTC et les technologies de communication en temps réel connexes.
Diriger et mentorer une équipe, impliquée dans la conception et la révision du code.
Collaborer avec l’équipe de gestion du produit et avec les développeurs logiciels homologues pour concevoir, développer et mettre en œuvre des plates-formes favorisant l’engagement des clients et à la fine pointe de l’industrie.
Travailler en collaboration avec les équipes de soutien afin d'analyser et de résoudre les incidents les déploiements en contact avec les clients.
Travailler avec l’équipe de gestion du produit pour analyser les exigences des produits et les besoins des clients, rédiger les spécifications fonctionnelles et techniques des composants applicatifs ainsi que les principales caractéristiques et versions.
Participer à toutes les phases du cycle de développement logiciel au sein d'une équipe Scrum multifonctionnelle.
Participer à l'architecture d'un modèle de déploiement logiciel évolutif et robuste.
Mettre en œuvre et maintenir à la fois les tests unitaires et la couverture des tests fonctionnels automatisés en collaboration avec les membres de l'équipe de qualité de Scrum.
Observer la QUALITÉ des produits que vous créez et du code que vous écrivez

Qualifications requises :
Nombre d'années d'expérience de travail : 8+

Compétences requises :
Solides compétences en développement Java
Solides compétences en développement Javascript backend (Node.js)
Solides compétences en développement Javascript en front-end
Compétences en développement C
Connaissance approfondie du WebRTC et des protocoles connexes, y compris RTP, DTLS, SIP, SIP, ICE.
Expérience dans la création de logiciels pour Linux, Windows, Android et IOS
Expérience avec le débogage RTP
Expérience avec le débogage de l'ICE
Expérience de la configuration de composants WebRTC, y compris STUN, TURN, serveurs multimédia, passerelles et bibliothèques comme Gstreamer et Jitsi.
Expérience en programmation de systèmes distribués (protocoles : HTTP/REST, WebSockets, SOAP, gRPC)
Expérience des pratiques de développement sécurisées, y compris le chiffrement et les mécanismes d'échange de clés.
Expérience dans la création et le déploiement d'applications natives du cloud à l'aide de Docker, Kubernetes, etc.
Capacité à diriger des équipes d'un point de vue technique/architecture
Excellentes aptitudes à communiquer verbalement et par écrit avec d'autres développeurs et clients d'affaires.
Expérience de la contribution à l'examen des codes
Capacité et confort d'interaction avec les clients pendant les phases de mise en œuvre, d'intégration et d'essai ; fournir un soutien après le déploiement.
Bonnes compétences en communication écrite et orale ; l'anglais est la langue des affaires.

Compétences préférées :
Compétences en développement
Compétences en développement Python

Education : Baccalauréat en informatique ou en génie logiciel, ou expérience de travail équivalente

Summary: This individual will join the NDEP Dev team in Enterprise R&D. This team owns the Designing and development of NDEP product.

Responsibilities:
  • Produce high quality and well-documented code for various platform components in multiple programming languages with a focus on WebRTC and related real-time communication technologies.
  • Lead and mentor team, involved in design and code review
  • Collaborate with Product Management and peer software developers to design, develop, and implement industry-leading customer engagement platforms.
  • Work collaboratively with support teams to analyze and resolve incidents for customer facing deployments.
  • Work with Product Management to analyze product requirements and customer needs, to write both functional and technical specifications for application components as well as major features/versions.
  • Participate in all phases of the software development cycle as part of a multi-functional Scrum team.
  • Participate in the architecture of a scalable and robust software deployment model.
  • Implement and maintain both unit tests and automated functional test coverage in collaboration with quality engineering Scrum team members.
  • Obsess over QUALITY in the products you create, and the code you write.
Qualifications

Number of Years of Work Experience: 8+

Required Skills:
  • Strong Java development skills
  • Strong backend Javascript development skills (Node.js)
  • Strong frontend Javascript development skills
  • C++ development skills
  • Deep knowledge of WebRTC and related protocols including RTP, DTLS, SIP, ICE
  • Experience building software for Linux, Windows, Android and IOS
  • Experience with debugging RTP
  • Experience with debugging ICE
  • Experience configuring WebRTC components including STUN, TURN, media servers, gateways, and libraries like Gstreamer and Jitsi
  • Experience with distributed systems programming (protocols: HTTP/REST, WebSockets, SOAP, gRPC)
  • Experience with secure development practices including encryption and key exchange mechanisms
  • Experience building and deploying cloud native applications using Docker, Kubernetes, etc
  • Ability to lead teams from a technical/architecture perspective
  • Strong verbal and written communication skills with other developers and business client
  • Experience contributing to code reviews
  • Ability and comfort to interact with customers during implementation, integration, testing phases; provide post-deployment support.
  • Good written and verbal communication skills; English is the language of business.
Preferred Skills:
  • Go development skills
  • Python development skills
Education: Bachelor in Computer Science or Software Engineering, or equivalent work experience

Additional Information / Informations additionnelles:In Montreal:
What we offer !

Unique environment for collaborative teamwork on cutting-edge technology:

  • Location is in the heart of downtown
  • Flexible hours
  • Transit reimbursement and parking
Contributing to and collaborating with international teams that drive innovation

  • Competitive benefit package:
  • 4 weeks’ vacation
  • 10 paid sick days
  • Bonus Plan, Group RRSP, Deferred Profit Sharing Plan, Employee Stock Purchase Plan
Award-winning Top Employer:
  • Montreal’s Top Employers – 7 consecutive years
  • Canada's Top Employers for Young People - 3 consecutive years
Ce que nous offrons!

Un environnement unique et collaboratif où vous travaillez avec les technologies de pointe :

  • Situé au cœur du centre-ville de Montréal
  • Horaire flexible
  • Allocation de transport en commun et de stationnement
  • Travail de concert avec des équipes à l’international afin de repousser les limites de l’innovation
Programme d’avantages sociaux concurrentiel :
  • 4 semaines de vacances
  • 10 congés de maladies payés
  • Régime de bonus annuel, REER collectif, Régimes de participation différée aux bénéfices (RPDB), Régime de rachat d’action pour les employés
Gagnant de prix à titre de meilleurs employeurs :
  • Montreal's Top Employers – pour 7 années consécutives
  • Canada's Top Employers for Young People - pour 3 années consécutives