Job Title or Location

Développeur(euse) logiciel / Software Developer - Edge OS

Genetec - 35 Jobs
Québec City, QC
Temps plein
Expérimenté
Company Benefits
Modalités de travail flexibles
Remboursement des frais de scolarité
Programmes de bien-être
Posted 14 days ago

La dynamique de votre équipe :

Située dans la ville de Québec, l'équipe Edge OS offre un appareil de pointe géré par le nuage et sans contact permettant la livraison, la gestion et la surveillance des applications Genetec chez nos clients.

Nous cherchons un(e) développeur(euse) logiciel à l'aise avec le développement embarqué ou ayant une bonne compréhension des principes fondamentaux des systèmes d'exploitation, des réseaux, de la conteneurisation et de la sécurité. Vous pourriez jouer un rôle-clé au sein d'une petite équipe enthousiaste et sympathique de développeurs logiciel qui visent à créer une plateforme robuste, fiable, sécurisée et moderne basée sur le système d'exploitation Linux ainsi qu'un ensemble de services de plateforme permettant la gestion de ces appareils à distance.

Si vous être curieux, aimez être exposé à une grande variété de technologies, avec de l'intérêt pour comprendre comment les choses fonctionnent sous le capot et que vous avez un talent pour résoudre des anomalies de systèmes complexes, nous aimerions vous rencontrer !

À quoi ressemblera votre journée :

  • Participer à la conception, à la planification, au développement, aux tests et à la livraison de tous les composants de la plateforme au sein d'une équipe Agile
  • Bâtir, personnaliser et maintenir à jour des distributions Linux à l'aide de Yocto et de différents langages de script
  • Développer des services de gestion et des daemons systèmes, principalement dans le langage Rust
  • Contribuer à l'amélioration de notre infrastructure de compilation et de création d'images ainsi qu'aux processus de gestion et de mise à jour des appareils
  • Examiner de nouvelles technologies, méthodologies et composantes et préparer des tests pour valider et affiner des analyses techniques
  • Collaborer étroitement avec les membres de votre équipe pour recueillir et offrir de façon proactive de la rétroaction, des conseils techniques et de l'expertise

Pour en connaitre plus sur vous :

  • Baccalauréat en génie logiciel, en informatique ou expérience équivalente
  • Expérience en développement des systèmes embarqués ou dans la programmation de systèmes (C, C++, Rust, Go ou équivalent)
  • Connaissance du système d'exploitation Linux et de ses composantes (services, outils, etc.)
  • Expérience avec l'écriture de scripts (Bash, Python ou équivalent)
  • Expérience en DevOps ou avec les processus de déploiements
  • Excellente connaissance des concepts de réseautique (routage, pare-feu, etc.) et des protocoles (DNS, DHCP, etc.)
  • Forte capacité d'analyse et résolution de problèmes
  • Capacité à apprendre rapidement et à prendre en charge son travail de façon autonome

Encore mieux si vous possédez ces atouts :

  • Expérience avec Yocto
  • Expérience avec Rust
  • Expérience avec tous les aspects du cycle de développement de systèmes embarqués/IoT (conception, livraison, mise à jour, dépannage) et de gestion de flotte
  • Connaissance des principes de cybersécurité et des meilleures pratiques de développement de systèmes sécurisés
  • Connaissance des concepts et des composantes des séquences de démarrage (UEFI, TPM, bootloaders, Secure Boot, initramfs, etc.)
  • Expérience avec les technologies de conteneurisation telles que Docker ou Kubernetes

Voilà ce que nous offrons !

  • Régime de rémunération attrayant
  • Programme de remboursement des frais de formation
  • Environnement avec bon niveau de maturité agile
  • Équilibre entre vie professionnelle et vie privée grâce à un horaire de travail flexible
  • Café gratuit à volonté
  • Espace de stationnement gratuit et/ou remboursement du transport en commun
  • Consultations virtuelles avec notre kinésiologue / rabais sur l'abonnement au gym

Vous n'êtes pas certain de cocher toutes les cases, mais vous avez envie de tenter votre chance ? Nous adorons votre enthousiasme !

Merci pour votre candidature, mais veuillez noter que seul(e)s les candidat(e)s qualifié(e)s seront contacté(e)s. Les chasseurs de têtes et les agences de recrutement ne sont pas autorisés à soumettre des CV par l'intermédiaire de ce site web ou directement aux gestionnaires.

---------------------------------------------------------------------------------------------------

Your team's dynamic:

Based in Quebec City, the Edge OS team is responsible for delivering a cloud-managed, zero-touch edge appliance to enable the frictionless delivery, management, and monitoring of Genetec applications at our customers' sites.

We are looking for a Software Developer comfortable with embedded or systems programming with a good grasp on fundamentals such as operating systems, networking, containerization, and security. You could become a key part of a small, enthusiastic, and friendly team of software developers aiming to create a robust, reliable, secure, and modern platform built on top of Linux and composed of set of core services enabling remote management of the devices.

If you are naturally curious, enjoy having exposure to a large variety of different technologies, interested in understanding how things work under-the-hood and have a knack for troubleshooting complex systems anomalies – we'd love to talk with you!

What your day will look like:

  • Participate in the design, planning, development, test, and delivery of all components of the platform (as part of an Agile team)
  • Develop, customize, and maintain a Linux distribution using Yocto and various scripting languages
  • Develop management services and system daemons primarily in Rust
  • Work on improving our build infrastructure and take part in the build & release management process
  • Explore new technologies, components and methodologies and set up experiments to validate and refine technical analyses
  • Collaborate closely with your teammates to both actively seek and provide feedback, technical guidance, and expertise

More about you:

  • Bachelor's degree in Software Engineering, Computer Science or equivalent experience
  • Experience in embedded software development or systems programming (in C, C++, Rust, Go or equivalent)
  • Knowledge of the Linux operating system and its components (services, tooling, etc.)
  • Experience with scripting (in Bash, Python or equivalent)
  • Experience with DevOps or build tooling and processes
  • Excellent knowledge of networking concepts (routing, firewall, etc.) and protocols (DNS, DHCP, etc.)
  • Strong analytical and debugging skills
  • Fast learner who wants personal responsibility and authority over their work

Great if you have:

  • Experience with Yocto
  • Experience with Rust or Erlang
  • Experience with the embedded/IoT firmware development lifecycle (build, release, update, troubleshooting) and fleet management
  • Knowledge of cybersecurity principles and secure system development best practices
  • Knowledge of the boot sequence concepts and components (UEFI, TPM, bootloaders, Secure Boot, initramfs, etc.)
  • Experience with containerization technologies such as Docker or Kubernetes

Let's talk perks!

  • Attractive compensation package
  • Training Tuition Reimbursement Program
  • Mature agile environment
  • Work-life balance with a flexible working schedule
  • Free, unlimited coffee
  • Free parking for all employees and/or reimbursement on public transport
  • Virtual consultations with our kinesiologist / discount on your gym membership

Still not sure if you check every box, but think it's worth a shot? We love that enthusiasm!

Thank you for your application, but please note that only qualified candidates will be contacted. Head-hunters and recruitment agencies may not submit resumés/CVs through this Web site or directly to managers.