MANTECH
Paramount
Ingénieur logiciel senior, systèmes de streaming de données
Présentation
La narration est, et sera toujours, au cœur de ce que nous faisons chez Skydance.
Notre vision est de bâtir un écosystème de divertissement prospère où les histoires et les mondes sont imaginés, prennent vie et sont vécus. Nous créons pour tous les âges et tous les publics, en nous appuyant sur la force de notre contenu et de nos expériences, ainsi que sur la profondeur de notre lien avec les fans. Nous sommes axés sur les créateurs, centrés sur le public, tournés vers la technologie et déployés à l'échelle mondiale.
Ici, vous travaillerez avec des équipes talentueuses qui avancent rapidement, pensent avec audace et collaborent avec détermination pour obtenir des résultats. Nous visons haut, défendons les meilleures idées et gagnons ensemble, en gagnant chaque jour la confiance de nos employés, créateurs, partenaires et publics.
Si l'opportunité de contribuer à bâtir la prochaine génération d'entreprises mondiales de médias et de divertissement, propulsée par la créativité et la technologie, vous stimule, nous serions ravis de vous accueillir à bord. C'EST PARTI !
Il s'agira de créer des applications de streaming tolérantes aux pannes prenant en charge l'analytique en temps réel, APIs, les flux de travail d'IA et les services de données critiques. Ce poste consiste à concevoir et à développer des applications de streaming haute performance et tolérantes aux pannes qui alimentent l'analytique en temps réel, APIs, les flux de travail d'IA et les services de données critiques à travers l'organisation. Vous concevrez et mettrez en œuvre des systèmes distribués et pilotés par les événements en utilisant Java, Kafka, Kubernetes et des frameworks réactifs modernes. En tant qu'ingénieur senior, vous définirez l'orientation technique. Vous encadrerez d'autres ingénieurs. Vous veillerez également à ce que nos plateformes de streaming soient fiables, évolutives et fonctionnent sans accroc. Ce rôle exige une expertise approfondie des systèmes distribués, de la concurrence et des microservices cloud-native.
Responsabilités principales
Concevoir et développer des applications de streaming en temps réel
- Développer des applications de streaming à haut débit et faible latence en utilisant Java et Kafka.
- Concevoir des microservices pilotés par les événements qui traitent, enrichissent et acheminent des données en temps réel à grande échelle.
- Mettre en œuvre des architectures réactives et non bloquantes pour prendre en charge une concurrence élevée et la résilience. Créer des frameworks et des bibliothèques de streaming réutilisables. Ceux-ci aideront à améliorer l'efficacité de l'ingénierie et la standardisation sur l'ensemble de la plateforme.
Architecturer des systèmes distribués évolutifs
- Concevoir et optimiser des architectures de streaming distribuées. Vous travaillerez avec les topics Kafka, les stratégies de partitionnement, les groupes de consommateurs, la gestion des schémas et les modèles de cycle de vie des événements.
- Aider à prendre des décisions architecturales pour l'ensemble de la plateforme. Cela inclut l'évolutivité, la résilience, la haute disponibilité, la reprise après sinistre et les déploiements dans plusieurs régions.
- Promouvoir les meilleures pratiques en matière de modélisation d'événements, d'évolution des schémas, d'idempotence, de rejouabilité et de cohérence des données dans les systèmes de streaming.
- Construire et optimiser des services évolutifs horizontalement déployés au sein d'environnements cloud basés sur Kubernetes.
- Fiabilité et performance en production : Assurer la fiabilité et la facilité de surveillance des plateformes et services de streaming. Maintenir ces systèmes dans un état de maturité opérationnelle.
- Optimiser les systèmes pour le débit, la latence, la résilience, l'efficacité des ressources et la gestion des coûts d'infrastructure. Mettre en place une observabilité complète en utilisant des métriques et une journalisation centralisée. Utiliser des outils de traçage distribué, d'alerte et de surveillance de la santé.
- Élaborer des stratégies de test automatisées pour les flux de travail de streaming, y compris les tests unitaires, d'intégration, de contrat, de chaos et de performance.
- Participer au support de production. Aider à la réponse aux incidents et à l'analyse des causes profondes. Travailler sur des initiatives visant à améliorer continuellement la fiabilité.
Ingénierie Cloud-Native et Kubernetes
- Déployer et gérer des microservices conteneurisés au sein d'environnements Kubernetes sur GCP, AWS ou des plateformes cloud similaires.
- Définir des stratégies d'autoscaling, de déploiement, de basculement et d'optimisation des ressources. Ces stratégies se concentreront sur les systèmes de production à haut volume.
- Créer et gérer des pipelines CI/CD. Cela inclut l'Infrastructure-as-Code et les flux de travail pour le déploiement automatisé.
- Collaborer avec les équipes d'ingénierie de plateforme pour améliorer les outils de développement, l'automatisation du déploiement et la fiabilité de l'exécution.
Collaboration interfonctionnelle
- Collaborer avec les équipes d'ingénierie des données pour intégrer les architectures de streaming aux systèmes de traitement par lots, aux lacs de données et aux plateformes analytiques.
- Collaborer avec les équipes d'ingénierie logicielle, de gestion de produit et d'API pour activer des services en temps réel et des applications basées sur les données.
- Travailler en étroite collaboration avec les équipes d'ingénierie IA/ML pour prendre en charge l'ingénierie des fonctionnalités en temps réel, les pipelines d'inférence et les charges de travail d'IA opérationnelles.
- Expliquer clairement les compromis des différentes options techniques. Discuter des considérations d'évolutivité et des risques opérationnels avec les parties prenantes de l'ingénierie.
Compétences techniques requises
Java et programmation réactive
- Maîtrise avancée de Java, y compris la concurrence, le multithreading et le réglage des performances de la JVM.
- Solide expérience avec des frameworks réactifs tels que Spring WebFlux, Project Reactor ou similaire.
- Connaissance approfondie de la conception de systèmes asynchrones et non bloquants.
Kafka et architecture pilotée par les événements
- Expérience étendue avec Apache Kafka (producteurs, consommateurs, flux, registre de schémas).
- Solide connaissance des stratégies de partitionnement, de la gestion des offsets, du rééquilibrage et de la récupération après défaillance.
- Expérience dans la conception de schémas d'événements et la gestion de l'évolution des schémas.
- Familiarité avec Kafka Streams, Flink ou des frameworks de traitement de flux similaires.
Kubernetes et systèmes Cloud-Native
- Solide expérience pratique du déploiement et de l'exploitation d'applications dans Kubernetes. Vous devez avoir de l'expérience dans l'utilisation de Docker pour la conteneurisation. Il est également important d'avoir des connaissances en architecture de microservices. Vous devez comprendre le fonctionnement de l'autoscaling. Vous devez également vous renseigner sur les déploiements progressifs (rolling deployments). Il est important de connaître les modèles qui garantissent une production fiable.
Qualifications de base
- 5+ années d'expérience professionnelle en ingénierie logicielle, dont 2+ années travaillant sur des systèmes de streaming ou distribués. Vous devez avoir de l'expérience dans la conception, la construction et l'exploitation de systèmes en temps réel de qualité production. Cela inclut les systèmes pilotés par les événements. Vous devez être à l'aise pour travailler dans des systèmes basés sur le cloud qui utilisent des microservices. Cela inclut les environnements d'ingénierie qui se concentrent sur ces technologies.
- Capacité à prendre en charge des travaux techniques complexes et à fournir des solutions fiables de manière autonome.
- Volonté d'encadrer des ingénieurs juniors et de contribuer aux normes d'ingénierie de l'équipe.
- Solides compétences en communication et en collaboration avec les équipes d'ingénierie et de produit.
- Licence en informatique, ingénierie ou domaine technique connexe ; diplôme supérieur souhaité.
INFORMATIONS COMPLÉMENTAIRES
#LI-PV1
Fourchette de salaire à l'embauche : $124,000.00 - 186,000.00.
La fourchette de salaire à l'embauche pour ce poste s'applique à New York, en Californie, au Colorado, dans l'État de Washington et dans la plupart des autres zones géographiques. La rémunération de départ pour le candidat retenu dépend de divers facteurs liés au poste, notamment, mais sans s'y limiter, la situation géographique, les demandes du marché, l'expérience, la formation et l'éducation. Les avantages sociaux disponibles pour ce poste comprennent l'assurance médicale, dentaire, vision, le plan 401(k), une couverture d'assurance vie, des prestations d'invalidité, un programme d'aide aux frais de scolarité et des congés payés (PTO) ou, le cas échéant, selon les dispositions de la convention collective appropriée. Ce poste est éligible à une prime.
Skydance est un employeur garantissant l'égalité des chances (EOE)
Nous saisissons l'opportunité de bâtir une main-d'œuvre qui reflète un large éventail de perspectives, d'horizons et d'expériences. Être un employeur garantissant l'égalité des chances signifie que nous prenons au sérieux notre responsabilité de considérer les candidats qualifiés sur la base du mérite. Conformément aux lois du pays ou de la région dans lequel le poste est basé, cela inclut une considération sans égard à la race, la couleur, l'ethnicité, l'origine nationale, le statut de citoyenneté, la religion ou les croyances, le sexe, le genre, l'identité ou l'expression de genre, l'orientation sexuelle, l'âge, l'état civil, la grossesse, la parentalité, le handicap physique ou mental, les informations génétiques, le statut militaire ou de vétéran protégé, le statut syndical ou toute autre catégorie protégée par la loi applicable.
Si vous êtes une personne qualifiée en situation de handicap, vous pouvez demander un aménagement raisonnable pendant le processus de candidature et/ou de recrutement. Vous pouvez demander des aménagements raisonnables en appelant le 212.846.5500 ou en envoyant un e-mail à [email protected]. Seuls les messages laissés à cette fin seront retournés.
Paramount Streaming, une division au sein de Paramount Global, abrite les services directs aux consommateurs de l'entreprise, couvrant les offres gratuites et payantes sous la forme de Pluto TV et Paramount+. Pluto TV est le leader mondial de la télévision gratuite financée par la publicité, proposant plus de 1,400 chaînes mondiales et une vaste bibliothèque de contenu en streaming, y compris des chaînes en direct et originales. Paramount+, service de vidéo à la demande par abonnement numérique et de streaming en direct, combine le sport en direct, les dernières nouvelles et A Mountain of Entertainment™. Paramount+ propose une vaste bibliothèque de séries originales, d'émissions à succès et de films populaires dans tous les genres, issus de marques et de studios de production de renommée mondiale, dont SHOWTIME®.
Ce que nous offrons
- Une rémunération attractive et des packages d'avantages sociaux complets. Consultez notre liste complète d'avantages ici skydance.com/careers/benefits.
- Des congés payés généreux.
- Des abonnements gratuits à HBO Max, Paramount+ et d'autres services de streaming et produits d'actualité numérique de Skydance.
- Des opportunités d'engagement des employés solides, incluant l'accès à des projections et événements exclusifs, des séries de conférences, des activités de bénévolat et plus encore.
