Embedded Software & Firmware Engineer (Halifax Regional Municipality)

Embedded Software & Firmware Engineer (Halifax Regional Municipality)

26 Oct
|
Marecomms
|
Halifax Regional Municipality

26 Oct

Marecomms

Halifax Regional Municipality

About Marecomms

Marecomms is a deep-tech ocean technology pioneer breaking long-standing signal processing and acoustic communication paradigms in subsea wireless environments. Built upon fundamental breakthroughs in underwater signal processing and high-efficiency sensor management, we develop world-leading acoustic modems and subsea networking solutions for commercial and defense applications globally.

Driven by scientific rigor and technological superiority, Marecomms is in a key strategic expansion phase—scaling our core capabilities to deploy our next-generation platform and accelerate operations.

Role Summary

We are seeking an Embedded Software & Firmware Engineer to develop, optimize, and validate low-level C/C++ firmware, real-time concurrency routines, hardware-in-the-loop (HIL) automation, and embedded Linux infrastructure. In this role, you will be the owner of the firmware runtime that bridges core algorithms and real-time execution on custom hardware platforms.

Your primary focus will be writing high-reliability C code, implementing deterministic data pipes/buffers, developing Python automation test suites, and maintaining firmware reference architectures for turnkey deployments.

Key Responsibilities

- Real-Time C/C++ Firmware: Write, maintain, and optimize C/C++ firmware featuring concurrent multi-threaded/multi-core execution, deterministic timing, state machines, and hardware-assisted concurrency.
- Data Streams & Peripheral Drivers: Implement and harden low-level drivers for SPI, I2C, UART, I2S/SAI, DMA channels, and circular ring buffers for continuous high-rate AD/DA data acquisition.
- HIL & Test Automation: Develop Python and Bash scripts for automated hardware-in-the-loop (HIL) testing, bench validation, log extraction, continuous integration, and system verification in Linux environments.
- Operator Tools & Telemetry: Build lightweight operator interfaces and diagnostics tools (command-line or Python/web-based dashboards served over IP)



for telemetry monitoring and system configuration.
- Reference Firmware Architecture: Document and package modular C code structures and reference software frameworks to support technology licensing for external integrators.
- Integration & Field Support: Work with hardware engineers to validate firmware on physical boards during lab bring-up and assist with field trial software setups in the Halifax area.
- Technical Documentation: Maintain clear, structured documentation for C firmware routines, driver handle APIs, state machine diagrams, and Python test suites.

Position Requirements

Mandatory Criteria:

- Education: Bachelor’s degree in Computer Engineering, Electrical Engineering, Computer Science, or Mechatronics Engineering.
- Work Authorization & Location: Valid Canadian work authorization and ability to work full-time from our Halifax office/lab starting on day one.
- Physical Capability: Ability to handle lab gear and field equipment (up to 20 kg) during bench testing and local field deployments.

Core Technical Skills (Firmware/Software Focus):

- Embedded C/C++ Mastery: Deep understanding of C/C++ for bare-metal or RTOS environments, register-level hardware interaction, memory management, and pointers.
- Concurrent Execution & Architecture: Practical experience with multi-threading, inter-task communication (queues, semaphores, pipes), event loops, or deterministic state machine architecture.
- Peripheral Streams: Hands-on experience configuring high-speed serial protocols (SPI, UART, I2C, I2S), interrupt service routines (ISRs), and DMA buffers.
- Linux & Python Tooling: Strong familiarity with Git,



Linux command-line environments, and Python for test automation and data processing.

Desirable Secondary Assets (Nice-to-Have):

- Ability to read schematics and use basic lab gear (oscilloscopes, multimeters) during initial board bring-up.
- Exposure to embedded Linux build tools (Yocto, Buildroot) or BSP customization.
- Working knowledge of signal processing concepts or MATLAB code analysis.

Position Structure & Applicant Eligibility

We welcome applications from qualified candidates across all experience levels—from recent graduates to mid-level and senior technical professionals:

- Entry-Level & Recent Graduates: Full-time developmental roles and structured internship positions are available exclusively to recent post-secondary graduates. (Note: Currently enrolled students seeking short-term co-op terms are not eligible).
- Mid-Level & Senior Engineers: Roles are structured as either full-time permanent positions or fixed-term milestone contracts based on project scope and technical experience.
- Location Requirement: This position requires mandatory, daily physical presence at our Halifax lab and office for hardware integration, bench testing, and field trial execution.

Compensation & Perks

- Compensation: Salary is $70,000 – $100,000 CAD per year, commensurate with experience, technical depth, and practical capability.
- Perks: On-site parking and hands-on lab and field testing experience in subsea technologies.

Pay: $70,000.00-$100,000.00 per year

Perks:

- On-site parking

Application question(s):

- 1. Are you presently located in the Halifax Regional Municipality (HRM) or actively living here? (Yes/No)

2. Are you legally authorized to work full-time in Canada on day one without employer sponsorship? (Yes/No)

3. Do you have hands-on experience developing low-level real-time C/C++ code and peripheral drivers (SPI, DMA, UART, I2C) for microcontroller/DSP hardware? (Yes/No)

Work Location: In person

📌 Embedded Software & Firmware Engineer (Halifax Regional Municipality)
🏢 Marecomms
📍 Halifax Regional Municipality

Reply to this offer

Impress this employer describing Your skills and abilities, fill out the form below and leave Your personal touch in the presentation letter.

Subscribe to this job alert:

Get the latest job offers by email for: embedded software & firmware engineer (halifax regional municipality) / halifax regional municipality

Subscribe to this job alert:

Get the latest job offers by email for: embedded software & firmware engineer (halifax regional municipality) / halifax regional municipality