Our analog and Ethernet connectivity products sit in the critical signal path of optical modules, copper interconnects, and high-speed networking infrastructure
Across both product lines, the firmware controlling these devices drives adaptive behaviour, calibration sequences, link management, and real-time performance, and it ends up deployed in data centers around the world
This is the kind of work where what you write actually matters
You’ll be part of a small Ottawa-based team working directly alongside senior engineers on firmware development, hardware bring‑up, test automation, and day‑to‑day project tracking
You won’t be handed a narrow slice of work and left alone
You’ll be involved across the board, getting exposure to how analog and Ethernet connectivity products go from silicon to production
This is a startup, and that means things move quickly and the work doesn’t always fit neatly into a job description
If that sounds like your kind of environment, keep reading
Level is negotiable based on experience and qualifications
Write and modify embedded C firmware for analog and Ethernet connectivity devices, including register configuration, state machines, calibration sequences, and control loops
Work on low-level hardware bring‑up and debug alongside senior firmware engineers
Contribute to features spanning analog control such as gain settings and equalization parameters, as well as Ethernet link management, SERDES configuration, and diagnostics
Help maintain and improve the firmware codebase with clean, reviewable code
Write Python scripts to automate test flows, collect and analyze data, and help make the team faster
Work with validation teams remotely to develop and execute test plans across a range of operating conditions and corner cases
Help build out CI infrastructure and automated test tooling as the team grows
Contribute to characterizing firmware behaviour across analog and Ethernet configurations, link states, and failure modes
Keep Jira tickets up to date, track your own work, and flag blockers early
Participate in code reviews and architecture discussions
Communicate clearly with teammates across firmware, silicon design, and applications
Qualifications
Some experience with Python scripting, whether for test automation, data analysis, or general utility scripts
Familiarity with Linux development tools: gcc/clang, make, bash, gdb, and git
A genuine interest in digging into hard problems and the persistence to see them through
2 to 5 years of experience writing embedded C/C++ firmware on real hardware
Strong communication skills and a collaborative attitude; you’ll be working closely with a small team and need to keep everyone in the loop
BS in Computer Science, Electrical Engineering, Computer Engineering, or a related field
Comfort working at the hardware/software boundary: reading datasheets, poking registers, interpreting hardware behaviour from software
Hands‑on experience with Ethernet at the system or device level: Layer 1 PHY, SERDES, retimers, gearboxes, NICs, or related devices
Exposure to analog or mixed‑signal systems: ADC/DAC interfaces, calibration techniques, signal conditioning
Understanding of signal integrity concepts: equalization, jitter, eye diagrams, or link margin
Experience with Jira or similar tools for issue tracking and project management
Background with RTOS, device drivers, or bare‑metal firmware on microcontrollers
Familiarity with lab equipment such as oscilloscopes, BERTs, logic analyzers or similar
Prior internship or co‑op experience in a semiconductor or networking hardware company