Développeur en Logiciels Embarqués | Embedded Software Developer at SPARK Microsystems
Montréal, QC H3K 1G6, Canada -
Full Time


Start Date

Immediate

Expiry Date

09 Aug, 25

Salary

0.0

Posted On

09 May, 25

Experience

0 year(s) or above

Remote Job

Yes

Telecommute

Yes

Sponsor Visa

No

Skills

Vmware, Matlab, Scripting Languages, Logic Analyzer, C++, Communication Protocols, Communication Skills, Unit Testing, Test Equipment, C, Visual Studio Code, C Programming, Python, Github, Usb, Boot Loaders, Windows, Gitlab, Docker, I2C

Industry

Information Technology/IT

Description

English Follows
En tant que développeur de logiciels embarqués chez SPARK Microsystems, vous serez amené à développer et à maintenir des microprogrammes couvrant nos diverses applications de systèmes embarqués, ce qui inclut les protocoles de réseau, les bibliothèques de base ainsi que le développement d’applications.

VOS QUALIFICATIONS

  • Baccalauréat en Génie Électrique ou équivalent.
  • 5ans et + d’expérience dans le développement d’applications embarquées en C et C++.
  • 5ans et + d’expérience en programmation C de bas niveau sur des microcontrôleurs / microprocesseurs, avec une connaissance avancée des architectures et des écosystèmes des MCU/CPU.
  • Connaissance approfondie des dépendances entre les composants du système et les couches de protocole, ainsi que de leurs interactions.
  • Expérience dans la spécification des cas d’utilisation au niveau du système et l’intégration de ces derniers vers le protocole MAC et l’architecture et les exigences en matière de réseau.
  • Capacité à travailler efficacement avec Linux et Windows.
  • Expérience de Visual Studio Code et de l’IDE Eclipse.
  • Expérience des langages de script tels que Python et MATLAB.
  • Expérience du développement de Board Support Packages, de chargeurs de démarrage et de pilotes de composants.
  • Expérience des technologies de virtualisation et de conteneurs (VMware, KVM, Docker).
  • Expérience des systèmes de contrôle de version Git.
  • Expérience des plateformes de développement logiciel telles que Gitlab et Github.
  • Compréhension des protocoles de communication, notamment I2C, SPI, UART et USB.
  • Expérience du développement pratique et du débogage sur des cibles embarquées à l’aide de débogueurs en circuit et d’équipements de test électronique (oscilloscope, multimètre, analyseur logique, etc.).
  • Expérience des processus modernes de développement de logiciels (examen par les pairs, tests unitaires, etc.).
  • Capacité à effectuer plusieurs tâches à la fois, à fixer des priorités pour les projets, à se fixer des buts et des objectifs précis et à faire preuve d’initiative.
  • Excellentes compétences en communication, en anglais et en français : Nécessité d’interagir sur une base régulière avec des collègues/clients partout au pays et à l’extérieur du pays.

YOUR QUALIFICATIONS

  • Bachelor in Electrical Engineering or equivalent.
  • 5+ years of experience in embedded application development in C and C++.
  • 5+ years of experience in low level C programming on microcontrollers / microprocessors, with advanced knowledge of MCU/CPU architectures and ecosystems.
  • Extensive knowledge of dependencies between system components and protocol layers and their interactions.
  • Experience with specifying system-level uses cases and flowing that down to MAC protocol/networking architecture and requirements.
  • Ability to work efficiently with both Linux and Windows.
  • Experience with Visual Studio Code and Eclipse IDE.
  • Experience with scripting languages such as Python and MATLAB.
  • Experience developing Board Support Packages, boot loaders, and component drivers.
  • Experience with virtualization and container technologies (VMware, KVM, Docker).
  • Experience with Git version control systems.
  • Experience with software development platform such as Gitlab and Github.
  • Understanding of communication protocols including I2C, SPI, UART and USB.
  • Experience in hands-on development and debug on embedded targets using in-circuit debuggers and electronic test equipment (oscilloscope, multimeter, logic analyzer, etc).
  • Experience in modern software development processes (peer reviewing, unit testing, etc).
  • Ability to multi-task, set project priorities, establish task focused goals and objectives for self and show initiative.
  • Excellent communication skills in English/French: Required to communicate with colleagues/clients across the country and abroad on a regular basis.
Responsibilities
  • Implement, test and document embedded and application software.
  • Develop algorithms for communication system protocol layers and networking.
  • Provide architectural and detailed designs to meet the system requirements.
  • Plan and evaluate architectural design and reviews system performance.
  • Maintain system software components including device drivers, RTOS and applications.
  • Participate in the team’s testing processes by developing protocols for unit testing, integration/regression testing, and system-level testing.
  • Research and evaluate new technology applications and conduct feasibility and de-risking studies.
Loading...