Embedded Software Developer, Field Tools

Posted 1 hour ago

Apply Now

Resume Score

Check how well your resume matches this job before you apply.

Sign in to check score

About the role

  • C++ software engineer developing core tooling and software for RF system testing and maintenance. Collaborate with product teams and support integration with hardware components in Montreal, QC.

Responsibilities

  • Design, develop, and maintain the core tooling engine and modules primarily in C++ and PY, following clean, maintainable coding standards
  • Build and maintain TCP socket and HTTP client/server communication layers in C++ to interface with embedded subsystems and backend services
  • Develop C++ interfaces to control and query external RF lab instruments (power meters, signal generators, spectrum analyzers) via standard instrument control protocols
  • Write Python scripts to support automation, glue logic, and rapid prototyping where appropriate
  • Implement and support RF mode test features including receiver sensitivity testing, test model signal generation, and waveform testing
  • Extend tool support for transmit/receive conformance testing and REST API integration
  • Develop and maintain a monitoring, analytics and data management system for Octasic products, backed by a C++ and PY FW serving real-time system status
  • Build real-time packet capture analysis pipelines for live field monitoring
  • Support continuous evolution of Data analytics and monitoring, aggregating telemetry and system data to support performance analysis, KPI reporting, troubleshooting, and validation of our wireless communication products
  • Support offline log analysis workflows and automated report generation (call metrics, scan metrics, registration rates)
  • Integrate tooling features with a data platform using message-broker architecture, relational database storage, and visual dashboarding
  • Support data pipeline extensions: geolocation, positioning, and periodic telemetry collection
  • Contribute to pipeline performance and reliability: threading, error handling, schema versioning

Requirements

  • Bachelor's degree in Software Engineering, Computer Engineering, Electrical Engineering, Computer Science, or equivalent practical experience
  • Strong, hands-on C++ and Python development experience — this is the primary language of the role; candidates must be comfortable writing production-quality C++ code
  • Experience with TCP socket programming and HTTP client/server communication for hardware-software integration
  • Familiarity with RF testing concepts or lab instrumentation control (signal generators, spectrum analyzers, power meters)
  • Hands-on experience with packet capture and network analysis (Wireshark or equivalent)
  • Experience with Git, Linux environments, and collaborative development workflows
  • Strong debugging and root-cause analysis skills in integrated hardware/software systems.

Benefits

  • Competitive compensation (salaries, benefits, gym membership discount, stock options purchase program, public transit reimbursement, shower on the premises and beverages and snacks free every day)

Job type

Full Time

Experience level

Mid levelSenior

Salary

Not specified

Degree requirement

Bachelor's Degree

Tech skills

LinuxPython

Location requirements

HybridMontrealCanada

Report this job

Found something wrong with the page? Please let us know by submitting a report below.