Software Engineer ; Richmond
Listed on 2026-06-03
-
Software Development
Software Engineer, Embedded Software Engineer
Summary
Our Software Engineer will play an integral role on our multidisciplinary Engineering Team focused on developing our robot and drone solutions, satellite terminal components, and our lines of portable satellite terminals (highly integrated with electrical/mechanical components) for broadcasters, disaster relief, and government applications. Your primary objectives will be creating and maintaining firmware for embedded devices and the development of robot/drone control systems.
WhatYou’ll Do
- Analyze requirements from internal departments (Sales, Marketing, Customer Service, Engineering, Production, etc.) and from external customers to generate Requirements Documents that govern the software being created.
- Analyze established requirements and research to design, enhance and maintain new software platforms for robot/drone management.
- Analyze established requirements and research to design, enhance, and maintain existing software platforms.
- Analyze established requirements to generate Test Procedure documents that ensure that all requirements are met.
- Execute Test Procedure documents as necessary.
- Create customer-focused documentation for software systems.
- Work with Customer Service to support customers in the field by:
- Analyzing and diagnosing issues discovered in the field.
- Providing timely solutions for any customer-detected issues.
- Updating software and/or documentation to prevent future issues.
- Bachelor’s degree in electrical / software / computer / communications engineering or computer science.
- 2+ years of progressively advanced programming experience with C, C++, C#, Python.
- Strong knowledge of:
- Embedded software development.
- Software engineering methodology.
- Object-oriented design.
- Multi-threaded programming.
- GUI design.
- Operating systems (Linux, ROS2, RTOS).
- Communication protocols (UART, CANBUS, SPI, I2C, IP, UDP, RTSP).
- Familiar with Agile software development.
- Experience with software architecture design.
- Ability to test and debug software that interfaces with hardware.
- Experience with version control software and bug tracking software.
- Ability to create customer-facing documentation for software projects.
- Background in robotics and drones: navigation (ROS2 Nav2), SLAM (SLAMToolbox/Cartographer/LIO‑SAM), perception (OpenCV, PCL, YOLO), and MAVLink/DDS/CAN integration.
- Experience with designing and maintaining software for robots and drones and related payloads.
- Experience with NVIDIA Jetson, PyTorch, Tensor
RT, CUDA (real‑time deployment/optimization). - Experience with Simulation & deployment tooling:
Gazebo, Isaac Sim, Docker, CI/CD, cross‑platform builds. - Experience with algorithmic complexity and optimizing edge applications for time and memory.
- Paid vacation days.
- 5 paid sick days.
- 100% paid by employer comprehensive health benefits package including medical, dental, life & more (coverage varies).
- RRSP program.
- Up to an annual maximum of $2,000 per year career development fund for designations and accreditations.
- 100% reimbursed for job-related training.
- On‑going training available.
- Flexible hours of work based on position.
- Employee Referral Program.
- Employee Award Program.
- Plenty of on-site and street parking & a bus stop right in front of the office (bus 405, 410, 416).
- Leisure areas in the office, employees are encouraged to have some fun! (i.e., ping pong table, foosball, Wii, tabletop games, card games).
- Employee events & initiatives: company BBQs, field trips, annual summer event, free snacks events, lunchroom has free flow of coffees & teas.
Please note that benefits may vary by location and employment status. This is an on-site position, so relocation will be required. Remote work is not supported at this time.
Applicants must hold either a Canadian citizenship, Canadian Permanent Residency, or Work/Study Permit. Unfortunately, we are unable to provide assistance for work authorization.
#J-18808-Ljbffr(If this job is in fact in your jurisdiction, then you may be using a Proxy or VPN to access this site, and to progress further, you should change your connectivity to another mobile device or PC).