Grass Valley

Ingénieur (-eure) Logiciel (Micrologiciel intégré) | Software Engineer (Embedded Firmware)

R&D - Montreal, QC, Canada - Full Time

                      Pourquoi joindre les rangs de Grass Valley?

Grâce à sa technologie primée et à son expertise reconnue, Grass Valley permet aux créateurs, aux diffuseurs et aux organisations médiatiques de produire du contenu exceptionnel qui captive le public et connecte les gens par la magie des médias.

En tant que chef de file de la R&D de l’industrie, nous offrons la gamme la plus étendue et approfondie de solutions de pointe dans le secteur. Nous sommes le partenaire de confiance de nombreux grands noms créatifs du secteur des médias et du divertissement, car nous aidons nos clients à créer des entreprises médiatiques prospères et à s’adapter à l’évolution rapide du paysage médiatique.

Pour de plus informations, veuillez consulter notre site www.grassvalley.com.

L’opportunité

Les membres de l’équipe d’ingénierie logicielle de Grass Valley développent des solutions de pointe pour la création, la transmission et la distribution de contenu. Nous nous engageons à redéfinir la façon dont le public expérimente le divertissement et l’information grâce à une technologie de pointe. Nous recherchons un(e) ingénieur(e) logiciel(le) hautement qualifié(e) et expérimenté(e), spécialisé(e) dans la diffusion vidéo et audio, pour rejoindre notre équipe. En tant membre de l’équipe d’ingénierie logicielle, vous jouerez un rôle déterminant dans la conception, le développement et les tests de solutions de systèmes embarqués adaptées aux applications de diffusion vidéo et audio.

Votre rôle

  • Contribuer aux solutions techniques pour les besoins ou problèmes des clients ;
  • Fournir des conseils techniques aux membres de l’équipe d’ingénierie logicielle travaillant sur le développement de nouvelles fonctionnalités ;
  • Concevoir des composants logiciels majeurs, des systèmes et des fonctionnalités.
  • Concevoir, développer, tester, déployer, entretenir et améliorer des logiciels ;
  • Planifier et participer à toutes les étapes du développement logiciel ;
  • Établir un calendrier et estimer les tâches ;
  • Utiliser les meilleures pratiques d'ingénierie logicielle (par exemple, tests unitaires, tests automatisés, revue de code) ;
  • Intégrer du code provenant d'autres équipes ;
  • Maintenir et améliorer les processus de création de logiciels à l'aide d'outils CI/CD comme Jenkins;
  • Restez à jour sur les tendances de l'industrie, les normes émergentes et les technologies liées à la diffusion vidéo et audio.

Votre personnalité et vos compétences 

  • Baccalauréat en génie logiciel, génie informatique, ou domaine connexe;
  • Deux (2) à cinq (5) ans d’expérience en développement de logiciels avec un fort accent sur les systèmes embarqués;
  • Expérience en conception de développement de logiciels;
  • Maîtrise des langages de programmation utilisés dans les systèmes embarqués tels que C et C++. Des compétences supplémentaires en programmation sont un atout;
  • Expérience du développement d’applications Linux avec la compilation croisée et l’exécution de débogueurs sur le matériel cible (internes du noyau Linux, pilotes de périphériques Linux);
  • Expérience en programmation de bas niveau, y compris le travail avec des microcontrôleurs et des microprocesseurs (x86, ARM);
  • Solide compréhension de l'architecture des systèmes embarqués, y compris les interactions matériel-logiciel, les systèmes d'exploitation en temps réel (RTOS), les applications « multithread », la synchronisation des « threads » et la gestion de la mémoire;
  • Expérience dans le développement, le débogage et la maintenance de micrologiciels pour systèmes embarqués;
  • Familiarité avec les outils de développement de micrologiciels tels que les environnements de développement intégrés (IDE) et les outils de débogage;
  • Vaste expérience avec les systèmes d'exploitation embarqués comme Linux ou les solutions RTOS personnalisées;
  • Maîtrise des scripts shell Linux;
  • Connaissance de l’électronique numérique, des capteurs et des interfaces de communication (UART, SPI, I2C, rs232), des bus de processeur communs (PCI, PCIe) et des chargeurs d’amorçage tels que u-boot;
  • Expérience dans la gestion de code avec des systèmes de contrôle de version comme Git pour suivre les versions et collaborer avec une équipe par le biais de branchements et de fusions;
  • Excellentes compétences en résolution de problèmes et capacité à résoudre des problèmes techniques complexes;
  • Forte pensée analytique et approche proactive pour identifier et résoudre les bogues logiciels;
  • Compétence dans la création d'une documentation claire et concise pour les processus de code, de conception et de développement;
  • Solides compétences en matière de travail d'équipe et de communication pour collaborer efficacement avec des équipes multi-sites interfonctionnelles, notamment avec les membres des équipes d’ingénierie du matériel, d’assurance qualité et les gestionnaires de projet;
  • Expérience avec des outils tels que JIRA, Stash et Confluence;
  • Maîtrise du français et de l’anglais à l’oral et à l’écrit.
    • Une connaissance de l’anglais appropriée aux fonctions est nécessaire, car la personne titulaire doit travailler dans des équipes de recherche et développement interfonctionnelles situées dans différents pays tels que les États-Unis, le Royaume-Uni et la Pologne.

 

Vos conditions de travail

  • Une rémunération concurrentielle
  • Un environnement de travail accueillant et dynamique

  • Cette description de poste a pour but de décrire la nature générale et le niveau du travail qu’implique cet emploi.  Il ne s’agit pas d’une liste exhaustive de toutes les responsabilités, tâches et compétences requises pour celui-ci.
  • Grass Valley est un employeur qui adhère au principe de l’équité et prend ses décisions en matière d’emploi sans tenir compte du sexe, de l’état civil, de la race, de la religion, de la couleur, de l’âge, du handicap, de l’orientation sexuelle ou du statut de vétéran protégé.

Why Join Grass Valley?

With our award-winning technology and trusted expertise, Grass Valley enables and empowers creators, broadcasters and media organizations to produce brilliant content that captivates audiences and connects people through the magic of media.

As the industry’s R&D powerhouse, we offer the widest and deepest range of best-in-class solutions in the industry. We are the trusted partner to many of the biggest and most creative names in the media and entertainment business as we help our customers to build successful media businesses and navigate the rapidly shifting mediascape.

For more information, please visit www.grassvalley.com.

The Opportunity

Grass Valley’s Software Engineers develop state-of-the-art solutions for content creation, transmission, and distribution. We are dedicated to redefining the way audiences experience entertainment and information through cutting-edge technology. We are seeking a highly skilled and experienced Software Engineer specializing in Broadcast Video and Audio to join our team. As a Software Engineer, you will be instrumental in the design, development, and testing of embedded system solutions tailored for broadcast video and audio applications

Your Role

  • Contribute towards technical solutions to clients’ requirements or issues;
  • Provide technical guidance to Engineers working on building out new features;
  • Lead designs for major software components, systems, and features. Design, develop, test, deploy, maintain, and improve software;
  • Plan and participate in all the software development steps;
  • Establish schedule and estimate tasks;
  • Use the best software engineering practices (e.g. unit tests, automated testing, code review);
  • Integrate code from other teams;
  • Maintain and improve software build processes using CI/CD tools like Jenkins;
  • Stay updated on industry trends, emerging standards, and technologies related to broadcast video and audio.

Who you are

  • Bachelor’s degree in software engineering, computer engineering, computer science or related field;
  • Two (2) to five (5) years experience in software development with a strong focus on embedded systems;
  • Experience in software development design;
  • Proficiency in programming languages used in embedded systems such as C and C++. Additional programming skills are an asset;
  • Linux application development experience with cross compiling and running debuggers on target hardware (Linux kernel internals, Linux device drivers);
  • Experience with low-level programming, including working with microcontrollers and microprocessors (x86, ARM);
  • Strong understanding of embedded systems architecture, including hardware-software interactions, real-time operating systems (RTOS), multi-threaded applications, thread synchronization, and memory management;
  • Experience in developing, debugging, and maintaining firmware for embedded systems;
  • Familiarity with firmware development tools like integrated development environments (IDEs) and debugging tools;
  • Extensive experience with embedded operating systems like Linux or custom RTOS solutions
  • Proficiency with Linux shell scripting;
  • Knowledge of digital electronics, sensors, and communication interfaces (UART, SPI, I2C, rs232), common processor busses (PCI, PCIe) and bootloaders such as u-boot;
  • Experience in managing code with version control systems like Git to track releases and collaborate with a team through branching and merging;
  • Excellent problem-solving skills and ability to troubleshoot complex technical issues;
  • Strong analytical thinking and a proactive approach to identifying and resolving software bugs
  • Proficiency in creating clear and concise documentation for code, design, and development processes;
  • Strong teamwork and communication skills to collaborate effectively with cross-functional multi-site teams, including hardware engineers, QA engineers, and project managers;
  • Experience with tools such as JIRA, Stash, and Confluence;
  • Fluency in French and English, both oral and written.
    • Knowledge of English appropriate to the duties is required, as the incumbent is expected to work in cross-functional research and development teams located in different countries such as the United States, the United Kingdom, and Poland.

Working Conditions

  • Competitive Compensation packages
  • Energizing and supportive work environment

  • This job description is intended to describe the general nature and level of work involved for this job.  It is not an exhaustive list of all responsibilities, duties and skills required of this job.
  • Grass Valley is an equal opportunity employer and makes employment decisions without regard to gender, marital status, race, religion, colour, age, disability, sexual orientation or protected veteran status.
Apply: Ingénieur (-eure) Logiciel (Micrologiciel intégré) | Software Engineer (Embedded Firmware)
* Required fields
First name*
Last name*
Email address*
Location
Phone number*
Resume*

Attach resume as .pdf, .doc, .docx, .odt, .txt, or .rtf (limit 5MB) or paste resume

Paste your resume here or attach resume file

Travaillez-vous actuellement chez Grass Valley Canada ?
Do you currently work at Grass Valley Canada?*
Êtes-vous légalement autorisé à travailler au Canada?
Are you legally eligible to work in Canada?*
Quelles sont vos attentes salariales?
What are your salary expectations?*
Human Check*