Staff Firmware Engineer in Toronto

Staff Firmware Engineer in Toronto

Toronto Full-Time 112230 - 137170 $ / year (est.) On-site
Q

At a Glance

  • Tasks: Design and develop cutting-edge firmware for next-gen tech products.
  • Company: Join Qualcomm, a leader in tech innovation and digital transformation.
  • Benefits: Competitive salary, bonuses, RSU grants, and comprehensive benefits package.
  • Other info: Collaborative environment with opportunities for mentorship and career growth.
  • Why this job: Make an impact in the semiconductor industry while working with advanced technologies.
  • Qualifications: Bachelor's or Master's in Engineering/Computer Science and 6+ years of relevant experience.

The predicted salary is between 112230 - 137170 $ per year.

As a leading technology innovator, Qualcomm pushes the boundaries of what's possible to enable next-generation experiences and drives digital transformation to help create a smarter, connected future for all. As a Qualcomm Software Engineer, you will design, develop, create, modify, and validate embedded and cloud edge software, applications, and/or specialized utility programs that launch cutting-edge, world-class products that meet and exceed customer needs. Qualcomm Software Engineers collaborate with systems, hardware, architecture, test engineers, and other teams to design system-level software solutions and obtain information on performance requirements and interfaces.

Minimum Qualifications:

  • Bachelor's degree in Engineering, Information Systems, Computer Science, or related field and 4+ years of Software Engineering or related work experience.
  • Master's degree in Engineering, Information Systems, Computer Science, or related field and 3+ years of Software Engineering or related work experience.
  • PhD in Engineering, Information Systems, Computer Science, or related field and 2+ years of Software Engineering or related work experience.
  • 2+ years of work experience with Programming Language such as C, C++, Java, Python, etc.

We are looking for an experienced Firmware Engineer to lead firmware architecture, development, integration, and bring-up for our SERDES PHY portfolio. The ideal candidate will have experience driving firmware definition, architecture, and development starting from the RTL/Digital design phase with EDA tool/simulator integration all the way to the post silicon phase with device level bring up and debug. It is a collaborative role where you will work with Hardware/Systems/Software teams to drive requirements and successful chip bring up.

What you'll do:

  • Gather requirements, studying high level designs, developing device interface functions and turning small building blocks into higher level firmware system design.
  • Work with multi-functional teams to come up with the detailed bring up and validation requirements, collaborating with ASIC / Digital Design, Digital Verification, software and systems engineers to meet performance goals.
  • Communicate requirements and coordinate execution with multiple teams.
  • Translating bring up and validation requirements into efficient C/C++ firmware code, software organization as applicable.
  • Oversee the entire firmware lifecycle for SERDES PHY, from pre-silicon design to post-silicon validation and optimization.
  • Developing for test and debug to help guide hardware design decisions for future product iterations.
  • Implement and utilize best practices in the software industry to ensure high-quality firmware designs.
  • Stay up-to-date with the latest trends and advancements in the semiconductor industry, and incorporate relevant innovations into our processes.
  • Develop and document firmware and hardware design specifications and decisions.
  • Mentor junior engineers, promote team building, and strive for continuous improvement in processes and techniques.
  • Debug and root cause, document and drive issues (i.e. low level SW, silicon, HW, etc.) to closure.
  • Drive multi-functional teams and partners to address challenges seen during integration and bring-up, ensure chips are seamlessly brought up, validated, tested, and meets product and business requirements.
  • Demonstrate full ownership of assigned systems/components. Handle timelines and resolve project challenges in order to meet program timing.
  • Working with external vendors or customers to ensure requirements are met and releases are of high quality.
  • Planning and developing test cases which enhance reliability and release quality to internal and external stakeholders and ensuring they are continuously tested in regression.

What You’ll Need:

  • BS or MS in Computer Science/Electrical/Computer engineering or a related field.
  • Proficient in C/C++, Python.
  • 6+ years of experience with embedded systems like ARM, RISCV, MIPS, etc and strong programming skills.
  • Working experience with low-level programming on bare metal, BIOS/UEFI firmware, linux kernel, RTOS, device driver, etc.
  • Systems mindset and experience developing SW/FW to control analog, digital, and mixed signal circuits.
  • Familiarity with industry-standard EDA tools and methodologies used for digital verification.
  • Familiarity with hardware description languages (HDLs) such as Verilog and SystemVerilog.
  • Experience with SerDes, Ethernet, PCIe, or D2D/UCIe products and communication systems.
  • Hands-on experience in the lab with CPU, SoC, FPGA, MCU, and DSP component validation and developing tests and debug tools.
  • Knowledge of peripherals/protocols such as 1G/10G Ethernet, DDR, I2C, SPI/QSPI, MIPI/CSI, GMSL, A2B, I2S, TDM, LVDS, PCIe, USB, NVME, CAN, etc.
  • Bring up and diagnostics experience with high speed signals.
  • Experience creating error monitoring and Board/Interface configuration APIs.
  • Fluent with a variety of bring-up tools, like oscilloscope, JTAG debugger, I2C/SPI tools, etc.
  • Strong organizational and communication skills, willingness to learn and confront technical challenges.

Nice to have:

  • Experience with embedded linux development, Buildroot and Yocto, RTOSes like Zephyr and FreeRTOS.
  • Experience working with FPGAs, Xilinx, Zed, MicroZed.
  • Hardware hands-on and debugging experience, such as Power, SI, EMC validation and tuning.
  • Experience with Jira, Agile/Scrum, Confluence.
  • Open source projects.

Staff Firmware Engineer in Toronto employer: QUALCOMM, Inc.

Qualcomm Canada ULC is an exceptional employer that fosters a dynamic work culture focused on innovation and collaboration in the field of AI and machine learning. Located in a vibrant tech hub, employees benefit from competitive compensation, a comprehensive benefits package, and ample opportunities for professional growth and development. Join a team that not only values your contributions but also supports your journey in shaping the future of connected devices.

Q

Contact Details:

QUALCOMM, Inc. Recruitment Team

We think you need these skills to ace Staff Firmware Engineer in Toronto

C/C++ Programming
Python Programming
Embedded Systems Development
Firmware Architecture
Device Driver Development
Low-Level Programming
Digital Design