Avatar for Haply Robotics
Bringing Touch to Technology

Senior Software Engineer – Haptic Systems & Middleware

  • $85k – $110k
  • |
  • |5 years of exp
  • |Full Time
Posted: 6 months ago
Job Location
Remote Work Policy

In office

Visa Sponsorship

Not Available

RelocationAllowed
Skills
Python
C++
TCP/IP
Websockets
Usb
Rust

About the job

Anglais à suivre - English to follow

Lieu : Montreal, Canada – On-site only

Type : Full-time

Salaire : $85,000–$110,000 CAD CAD per year based on experience

À propos de Haply Robotics

Haply Robotics conçoit et fabrique des contrôleurs haptiques haute performance qui apportent un retour de force réaliste aux environnements numériques. Nos produits se situent à l’intersection de la robotique, des systèmes embarqués et des plateformes logicielles, permettant aux développeurs d’intégrer le toucher dans des applications telles que la simulation, la formation, la téléopération et les interfaces homme–machine avancées.

Nous développons l’ensemble de la pile technologique en interne, de la conception mécanique et du firmware jusqu’au middleware, aux API pour les développeurs et aux applications destinées aux utilisateurs.

Aperçu du poste

Nous recherchons un ingénieur logiciel senior pour travailler sur la pile logicielle principale de nos contrôleurs haptiques.

Ce rôle se concentre sur la couche de services, un middleware critique qui relie le firmware embarqué, les pilotes de périphériques et les applications logicielles de plus haut niveau. Cette couche gère la communication avec les appareils, le flux de données et expose des interfaces propres et fiables, tant pour les outils internes que pour les développeurs tiers.

Il s’agit d’un rôle profondément technique et très concret. Bien qu’il n’implique pas de gestion formelle de personnel, nous recherchons une personne capable d’agir comme leader technique au sein de l’équipe, apportant de la clarté architecturale, élevant les standards d’ingénierie et faisant progresser l’équipe par l’exemple et l’expertise.

Pourquoi ce poste existe maintenant

Haply entre dans une phase clé de l’évolution de sa plateforme.

À mesure que notre matériel arrive à maturité et que son adoption augmente, la couche logicielle qui relie le firmware, les appareils et les applications est devenue centrale dans notre stratégie produit. Ce qui était autrefois un composant de soutien est désormais l’épine dorsale qui permet la performance, la fiabilité et l’intégration pour les développeurs.

Nous augmentons activement :

• le nombre d’appareils et de configurations pris en charge

• les attentes en matière de latence, de robustesse et de stabilité

• l’importance d’une interface propre et bien architecturée pour les développeurs externes

Pour soutenir cette croissance, nous avons besoin d’un ingénieur senior capable de prendre en charge cette couche centrale, d’en améliorer l’architecture et de s’assurer qu’elle évolue techniquement à mesure que l’entreprise et le produit se développent.

Ce rôle existe pour :

• renforcer la maintenabilité à long terme et les performances de la couche de services

• clarifier et solidifier les interfaces entre le firmware, les pilotes et les applications

• élever le niveau technique grâce à l’expérience, à la rigueur et au leadership par l’exemple

Responsabilités

• Concevoir, développer et maintenir la couche centrale de services / middleware du logiciel des contrôleurs haptiques de Haply

• Mettre en œuvre et optimiser les couches de communication de bas niveau, notamment :

• la communication série USB avec les appareils embarqués

• la découverte des appareils, la gestion des connexions et le flux de données

• Développer et maintenir une interface basée sur WebSocket reliant la couche de services à :

• l’interface utilisateur

• les applications externes et les outils pour développeurs

• Travailler en étroite collaboration avec l’équipe firmware afin de définir, faire évoluer et maintenir des interfaces firmware–logiciel robustes

• Concevoir et maintenir des API destinées aux développeurs permettant aux logiciels tiers de s’intégrer aux appareils Haply

• Optimiser les performances, la latence et la fiabilité pour l’interaction haptique en temps réel

• Contribuer aux décisions d’architecture logicielle, aux efforts de refactorisation et à l’orientation technique à long terme

• Rédiger un code clair, maintenable et bien documenté

• Assurer le débogage et la résolution de problèmes sur l’ensemble de la pile technologique (firmware, services, interface utilisateur)

• Agir comme référence technique au sein de l’équipe en révisant les conceptions, en partageant les connaissances et en accompagnant les collègues

Exigences

• Solide expérience professionnelle en C++

• Solide expérience en Rust, ou forte motivation à travailler de manière approfondie avec Rust

• Expérience avec Python pour les outils, les scripts ou les services auxiliaires

• Forte compréhension de l’architecture logicielle, en particulier pour les systèmes interagissant avec le matériel

• Expérience de travail avec :

• des services système de bas niveau ou des pilotes

• des protocoles de communication série (USB, UART ou similaires)

• des systèmes de mise en réseau et de messagerie (WebSockets, TCP/IP)

• Familiarité avec des systèmes sensibles aux performances ou en temps réel

• À l’aise pour travailler à travers plusieurs couches de la pile logicielle

Atouts supplémentaires

• Expérience d’interfaçage avec des systèmes embarqués ou du firmware

• Formation ou expérience en robotique, en haptique, en systèmes de contrôle ou en simulation en temps réel

• Expérience dans la création de SDK ou de plateformes pour développeurs

• Expérience en développement multiplateforme (Windows, macOS, Linux)

• Expérience en tests, en benchmarking et en profilage des performances

About Haply Robotics

Haply Robotics designs and builds high-performance haptic controllers that bring realistic force feedback to digital environments. Our products sit at the intersection of robotics, embedded systems, and software platforms, enabling developers to integrate touch into applications such as simulation, training, teleoperation, and advanced human–machine interfaces.

We develop the full stack in-house — from mechanical design and firmware to middleware, developer APIs, and user-facing applications.

Role Overview

We are looking for a Senior Software Engineer to work on the core software stack of our haptic controllers.

This role focuses on the service layer: the critical middleware that connects embedded firmware, device drivers, and higher-level software applications. This layer handles device communication, data streaming, and exposes clean, reliable interfaces for both internal tools and third-party developers.

This is a deeply technical, hands-on role. While it does not involve formal people management, we are looking for someone who can act as a technical leader within the team — someone who brings architectural clarity, raises engineering standards, and helps push the team forward through example and expertise.

Why This Role Exists Now

Haply is entering a key phase in the evolution of its platform.

As our hardware matures and adoption increases, the software layer that bridges firmware, devices, and applications has become central to our product strategy. What was once a supporting component is now the backbone that enables performance, reliability, and developer integration.

We are actively increasing:

• the number of supported devices and configurations

• the expectations around latency, robustness, and stability

• the importance of a clean, well-architected interface for external developers

To support this growth, we need a senior engineer who can take ownership of this core layer, improve its architecture, and ensure it scales technically as the company and product evolve.

This role exists to:

• strengthen the long-term maintainability and performance of the service layer

• clarify and solidify interfaces between firmware, drivers, and applications

• raise the technical bar through experience, rigor, and leadership by example

Responsibilities

• Design, develop, and maintain the core service / middleware layer of Haply’s haptic controller software

• Implement and optimize low-level communication layers, including:

• USB serial communication with embedded devices

• Device discovery, connection management, and data streaming

• Develop and maintain a WebSocket-based interface connecting the service layer to:

• the user interface

• external applications and developer tools

• Work closely with the firmware team to define, evolve, and maintain robust firmware–software interfaces

• Build and maintain developer-facing APIs that enable third-party software to integrate with Haply devices

• Optimize performance, latency, and reliability for real-time haptic interaction

• Contribute to software architecture decisions, refactoring efforts, and long-term technical direction

• Write clear, maintainable, and well-documented code

• Support debugging and troubleshooting across the full stack (firmware service UI)

• Act as a technical reference within the team by reviewing designs, sharing knowledge, and mentoring peers

Requirements

• Strong professional experience in C++

• Solid experience in Rust, or strong motivation to work extensively in Rust

• Experience with Python for tooling, scripting, or auxiliary services

• Strong understanding of software architecture, particularly for systems interacting with hardware

• Experience working with:

 • Low-level system services or drivers

 • Serial communication protocols (USB, UART, or similar)

 • Networking and messaging systems (WebSockets, TCP/IP)

• Familiarity with performance-sensitive or real-time systems

• Comfortable working across multiple layers of the software stack

Nice-to-Haves

• Experience interfacing with embedded systems or firmware

• Background in robotics, haptics, control systems, or real-time simulation

• Experience building SDKs or developer platforms

• Cross-platform development experience (Windows, macOS, Linux)

• Experience with testing, benchmarking, and performance profilin

About the company

Funding

AMOUNT RAISED
$3.5M
FUNDED OVER
2 rounds
Rounds
S
$3500000
Seed - Mar 2023+1

Founders

Colin Gallacher
Founder
Montreal
image
Yi (Steven) Ding
Founder
image
View the team image

Similar Jobs

LCA company logo
LCA
From AI to addictive apps, we design products for the future
Altinity company logo
Altinity
The leading service and software provider for ClickHouse
Projekt Network company logo
Projekt Network
Building a platform that will transform the recruiting experience in the skilled trades
KixCare company logo
KixCare
Canada’s only national, bilingual virtual healthcare platform dedicated to kids & teens
HRVST company logo
HRVST
We’re a creative agency using small shop smarts to drive big business growth on Shopify