We are looking for a passionate and energetic software engineer to join the Quartus compiler team at Altera. Altera is a pioneer of programmable logic solutions, enabling system and semiconductor companies to rapidly and cost effectively innovate, differentiate, and win in their markets. Altera combines programmable logic technology with software tools, intellectual property, and customer support to provide high-value programmable solutions to many customers worldwide.
In this role, you will be developing the software for Quartus, the tool that programs the current and next generation of FPGA devices. Quartus is used by all FPGA acceleration technologies (including OpenCL, HLS, Intel FPGA AI Suite, etc).
As part of the Compiler team, your responsibilities will include, but are not limited to:
Developing the software that supports optimized synthesis, placement and routing of the latest and next generation FPGA devices.
Making innovative FPGA hardware features accessible via easy-to-use software interfaces.
Enhancing tools and infrastructure to allow the Compiler operations to be used in new and innovative ways.
Implementing new features in addition to root-causing and fixing the existing ones, while maneuvering your way through a big code base.
Cross-functional interactions with various customers (internal and external).
Ideal candidates exhibit the following behavioral traits:
Excellent problem-solving and debugging skills, as well as attention to detail.
Great communication, teamwork, and interpersonal skills
Flexible, organized, and proactive.
Our compensation is designed to reflect the Canadian labour market. The actual salary offered may vary based on several factors, including the position's location, as well as the candidate's experience, skills, training, and job-specific knowledge. In addition to base salary, we offer performance-based incentive opportunities that reward both individual contributions and overall company success.
Estimated Salary Range: $100K-$115K CAD
We use artificial intelligence to screen, assess, or select applicants for the position. This posting is for an existing vacancy. Canadian work experience is not required for this role.
Relevant experience can be obtained through schoolwork, classes and project work, internships, military training, and/or work experience.
Minimum Qualifications:
BS degree or MS degree in Computer Engineering, Engineering Science, Electrical Engineering, Computer Science or equivalent, with 1+ year of experience or Master's Degree in related field
3+ years C/C++ programming experience in a Linux/Unix environment
Preferred Qualifications:
Experience with Verilog, SystemVerilog or VHDL.
Experience developing EDA/CAD optimization algorithms for FPGAs or ASICs.
Experience with data structure and algorithm design, with a particular focus on graph theory and related algorithms.
Experience developing high-performance parallel software systems.
Experience working in a modern large scale modular code base.
Experience with Altera Quartus or Xilinx Vivado software.
Experience with scripting languages, particularly Python, Perl or TCL.