Lead Engineer, Embedded Software

THINK Surgical, Inc.Montreal, QC
CA$140,000 - CA$165,000Hybrid

About The Position

The Lead Engineer, Embedded Software will drive the design and development effort of the current optical tracking system to the next generation. They will perform system analysis, identify improvements and root causes, debug and optimize algorithms, and design novel solutions as well as maintain the current code base. This position can based in the Montreal, QC or Fremont, CA Office.

Requirements

  • BS in Computer Science or a related field; or equivalent experience.
  • 10+ years of experience in software engineering, including hands-on software development.
  • Proficiency in C++ programming in a real-time environment including multithreading with pThreads and higher-level concepts such as Task and Futures.
  • Proficiency in designing communication frameworks and APIs using gRPC and REST.
  • Experience interfacing with electronic components.
  • Deep knowledge of the ARM platform.
  • Working knowledge of Python.
  • Familiarity with control systems, especially PIDs.
  • Working knowledge of how to interface with low-level hardware components such as temperature sensors, accelerometers and battery level sensors.
  • Familiarity with CI/CD, CMake, Docker and Yocto.
  • Excellent communication and documentation skills.
  • Strong working knowledge of object-oriented programming and software system design.
  • Knowledge of Good Manufacturing Practices (GMP) and applicable Quality System Standards.

Nice To Haves

  • Advanced degree in Computer Science or a related field.
  • Experience medical image processing.
  • Familiarity with bare metal development.
  • Familiarity with FreeRTOS.
  • Familiarity with multi-processor systems.
  • Ability to understand electronic schematics.
  • Theoretical knowledge of camera models, stereo vision and object tracking.
  • Experience with data pipeline management and analytics.
  • Experience in Agile/Scrum methodology.
  • Proficient in Python.
  • Familiarity or experience with regulatory environments, design controls, and 510(k) submissions.

Responsibilities

  • Design, implement, and test medium to large complex software in C++ for robotic surgical devices.
  • Work in a software team environment.
  • Work concurrently with design engineers and manufacturing engineers as designs are being developed and finalized.
  • Follow rigorous design control methodology and write concise requirements specification, architecture specifications, and design description, verification plans, and test cases, based on regulatory requirements.
  • Design and perform unit testing of software and assist in the verification and validation process of the complete design.
  • Manage schedules and meet and adhere to development goals.
  • Provide planning and status information to the project manager.
  • Execute agile development plans in accordance with department goals and objectives.
© 2026 Teal Labs, Inc
Privacy PolicyTerms of Service