Firmware Engineer – SerDes PHY (all levels)
Technology, Data & Digital · Software & Web Development · Software Engineering · Embedded Systems
In short
Qualcomm is seeking a Firmware Engineer for their SerDes PHY team in Toronto, Ontario. This role involves designing, developing, and validating embedded software for high-performance SerDes IP used in data center, AI/ML, automotive, and compute applications. The position offers opportunities to lead firmware architecture and development from pre-silicon to post-silicon phases.
Responsibilities
- Design, develop, create, modify, and validate embedded and cloud edge software, applications, and/or specialized utility programs.
- Collaborate with systems, hardware, architecture, and test engineers to design system-level software solutions.
- Develop critical embedded software powering high-performance multi-standard Serializer/Deserializer (SerDes) PHY IP.
- Own the full embedded software stack controlling SerDes hardware, including low-level embedded firmware, customer-facing C SDKs, demo & automation scripts, and interactive tools.
- Lead firmware architecture, development, integration, and bring-up for SerDes PHY portfolio.
- Drive firmware definition, architecture, and development from RTL/digital design phase through post-silicon phase with device-level bring-up and debug.
- Work with hardware, systems, and software teams to drive requirements and successful chip bring-up.
- Drive code re-use across the organization with firmware and embedded software engineers.
- Identify and meet deadlines with program managers.
- Develop embedded firmware running on RISC-V-based controllers.
- Create Python and C SDKs for SerDes bring-up, calibration, tuning, and diagnostics.
- Develop Python-based lab tools and GUIs for interactive debug, register access, and validation.
- Build, regress, and maintain CI infrastructure to ensure code quality and full coverage.
- Serve as technical or project lead for SerDes firmware on major IP programs.
- Gather requirements, study high-level designs, develop device interface functions, and create higher-level firmware system designs.
- Architect and implement embedded C/C++ firmware for hardware calibration, training algorithms, DSP adaptations, and link state management.
- Define detailed bring-up and validation requirements and meet performance goals with multi-functional teams.
- Communicate requirements and coordinate execution across multiple teams and sites.
- Translate bring-up and validation requirements into efficient C/C++ firmware code and well-structured software organization.
- Translate protocol specifications into internal firmware architecture and documentation.
- Develop test and debug capabilities to guide hardware design decisions for future product iterations.
- Debug complex lab and field issues in conjunction with hardware, applications, and validation teams.
- Drive multi-functional teams and partners to address integration and bring-up challenges.
- Plan and develop test cases that improve reliability and release quality.
- Work with external vendors and customers to ensure requirements are met and releases are of high quality.
- Drive and collaborate across functions to define FW milestones, plan sprints, close tickets, and deliver reliable, high-quality features.
- Implement industry best practices and document firmware and hardware design specifications and decisions.
- Mentor junior engineers, promote team building, and drive continuous improvement in processes and techniques.
- Demonstrate full ownership of assigned systems/components, managing timelines and resolving project challenges.
- Stay current with advancements in the semiconductor industry and incorporate relevant innovations.
- Support development and silicon bring-up across Qualcomm teams and other sites.
Requirements
- Bachelor's degree in Engineering, Information Systems, Computer Science, or related field and 6+ years of Software Engineering or related work experience.
- OR Master's degree in Engineering, Information Systems, Computer Science, or related field and 5+ years of Software Engineering or related work experience.
- OR PhD in Engineering, Information Systems, Computer Science, or related field and 4+ years of Software Engineering or related work experience.
- 3+ years of work experience with Programming Language such as C, C++, Java, Python, etc.
- BS/MS in Computer Science, Electrical Engineering, Computer Engineering, or a related field
- 7+ years of experience in embedded C/C++ firmware development for hardware IP or SoCs, with strong proficiency in C/C++ and Python
- Hands-on experience with embedded architectures such as ARM, RISC-V, or MIPS, and with low-level programming on bare metal, RTOS, BIOS/UEFI firmware, Linux kernel, or device drivers
- Technical or team leadership experience in embedded software projects from spec to production
- Deep understanding of microcontroller architecture (RISC-V a plus), memory-mapped registers, ISRs, and boot flows
- Systems mindset and experience developing SW/FW to control analog, digital, and mixed-signal circuits
- Experience with SerDes, Ethernet, PCIe, CXL, or D2D/UCIe/chiplet products and communication systems
- Strong lab debug skills, working directly on silicon with scopes, JTAG debuggers, I2C/SPI tools, analyzers, and custom tooling, including bring-up and diagnostics of high-speed signals
- Familiarity with industry-standard EDA tools and methodologies used for digital verification, and with HDLs such as Verilog and SystemVerilog
- Familiarity with git and modern software development methodologies
- Excellent organizational and communication skills, a willingness to learn, and the ability to collaborate across functions and geographies
Desired Qualifications
- Knowledge of SerDes and high-speed IO standards (PCIe, Ethernet, UCIe, CXL, etc.)
- Experience with calibration algorithms, signal conditioning, and adaptive feedback control in hardware
- Experience in silicon bring-up and post-silicon debug
- Experience in pre-silicon firmware development (DV, emulation, etc.)
- Knowledge of RTOS or bare-metal FW architectures, including embedded Linux development, Buildroot/Yocto, and RTOSes such as Zephyr and FreeRTOS
- Knowledge of peripherals and protocols such as 1G/10G Ethernet, DDR, I2C, SPI/QSPI, MIPI/CSI, GMSL, A2B, I2S, TDM, LVDS, PCIe, USB, NVMe, and CAN
- Experience developing drivers for multiple devices at the PCB level to interact with whole systems
- Experience creating error monitoring and board/interface configuration APIs
- Hands-on lab validation experience with CPU, SoC, FPGA, MCU, and DSP components, including developing tests and debug tools
- Experience working with FPGAs such as Xilinx, Zed, and Micro Zed
- Hardware hands-on and debugging experience, such as power, SI, and EMC validation and tuning
- Scripting in Python, Bash, etc. for lab automation and testing
- Familiarity with digital design concepts (Verilog/SystemVerilog), simulation, and DV flows
- Exposure to the OSI model, especially the physical and data link layers
- Understanding of signal processing concepts such as eye diagrams, jitter, BER, SNR, and CTLE/DFE/FFE
- Experience with Jira, Agile/Scrum, and Confluence
- Contributions to open source projects
Benefits
- Qualcomm is committed to providing an accessible process for individuals with disabilities during the application/hiring process.
- Qualcomm is committed to making our workplace accessible for individuals with disabilities.
#firmware#engineer#SerDes#PHY#embedded#software#engineering#Qualcomm#Toronto#Canada