Engineer I - Software
Microchip Technology
Are you looking for a unique opportunity to be a part of something great? Want to join a 20,000-member team that works on the technology that powers the world around us? Looking for an atmosphere of trust, empowerment, respect, diversity, and communication? How about an opportunity to own a piece of a multi-billion dollar (with a B!) global organization? We offer all that and more at Microchip Technology, Inc.
People come to work at Microchip because we help design the technology that runs the world. They stay because our culture supports their growth and stability. They are challenged and driven by an incredible array of products and solutions with unlimited career potential. Microchip’s nationally-recognized Leadership Passage Programs support career growth where we proudly enroll over a thousand people annually. We take pride in our commitment to employee development, values-based decision making, and strong sense of community, driven by our Vision, Mission, and 11 Guiding Values; we affectionately refer to it as the Aggregate System and it’s won us countless awards for diversity and workplace excellence.
Our company is built by dedicated team players who love to challenge the status quo; we did not achieve record revenue and over 30 years of quarterly profitability without a great team dedicated to empowering innovation. People like you.
Visit our careers page to see what exciting opportunities and company perks await!
Job Description:
Microchip’s FPGA software engineering team develops the Electronic Design Automation (EDA) software used by customers to program Microchip FPGAs. Customers perform their entire FPGA design flow using this software: from design entry, to synthesis, through place-and-route, timing, power analysis, and simulation.
The High-Level Synthesis (HLS) Team in the Toronto Office is responsible for developing the SmartHLS and PolarFire System tools. These tools provide a comprehensive platform that enables designers to navigate the complex landscape of FPGA-based SoC designs, from software specification to hardware implementation. They leverage RISC-V processors to enable customizable SoC designs. Designers can compile, debug, and run software on a RISC-V processor, accelerating software using FPGA hardware cores created with HLS. The tools enhance the design process by providing intuitive command-line and graphical interfaces, offering a platform for modeling and simulating complete SoC designs, and enabling the verification and resolution of issues prior to hardware deployment. This feature improves design reliability and reduces time-to-market for FPGA designs.
As a software engineer, you will work on system-level design and verification software that integrates embedded cross-compilers, HLS compilers, reference designs, libraries, AI/ML, and more. You will be part of an agile engineering team, solving complex problems.
You will have ownership over new software projects from inception to development, testing, writing user documentation, and releasing software to Microchip FPGA customers.
Responsibilities:
- Implement optimized HLS libraries and reference designs for computer vision, math functions, machine learning, networking, and digital signal processing.
- Develop and maintain advanced testing and continuous integration frameworks to ensure the reliability and performance of the HLS tools, libraries, and reference designs.
- Investigate customer FPGA applications to improve productivity and optimize performance/area as required.
- Provide support to customers and internal teams by troubleshooting and resolving issues related to the HLS tools and their ecosystem. Document common problems and solutions.
- Investigate the use of AI techniques to improve software/hardware co-design frameworks.
- Contribute to develop the software/hardware co-design framework for high-performance RISC-V processor/FPGA hardware SoC designs.
- Assist in prioritizing the team’s roadmap by identifying new features and gaps.
Requirements/Qualifications:
Minimum Qualifications:
- BS, MS, or PhD Degree in computer science or electrical/computer engineering.
- Proficient programming skills in C++ and Python.
- Knowledge of algorithms, data structures, and computer architecture.
- Knowledge of digital design and experience with FPGA development boards.
- Experience working with embedded processors.
- Problem-solving skills and attention to detail.
- Good communication and interpersonal skills, and the ability to work independently and as part of a team.
- Willingness to learn and adapt to new technologies and challenges.
Preferred Qualifications:
- Experience with HLS tools.
- Experience with system-level design, debug, and verification.
- Experience with RISC-V, OpenOCD, HDL languages (Verilog/VHDL).
- Comfortable with large-scale software development in both Linux and Windows environments.
- Familiarity with Microchip tools is a plus.
- Experience working with the LLVM compiler is a plus.
Travel Time:
0% - 25%Pay Range:
We offer a total compensation package that ranks among the best in the industry. It consists of competitive base pay, restricted stock units, and quarterly bonus payments. In addition to these components, our package includes health benefits that begin day one, retirement savings plans, and an industry leading IESPP program with a 6-month look back feature. Find more information about all our benefits at the link below:Benefits of working at Microchip
The annual base salary range for this position is 76,000 - 114,000.**Range is dependent on numerous factors including job location, skills and experience.
Ontario Accommodation:
Your accessibility is important to us. If you would like to contact us about our website or need help completing the application process, please email us at CanadaHR@Microchip.com.
In accordance with applicable laws (including human rights and accessibility legislation in Ontario), accommodation will be provided in all parts of the hiring process. Let us know what type of accommodations you require to help remove barriers so that you can participate throughout the interview process.
This contact information is for accommodation requests only and cannot be used to inquire about the status of applications.
To all recruitment agencies: Microchip Technology Inc. does not accept unsolicited agency resumes. Please do not forward resumes to our recruiting team or other Microchip employees. Microchip is not responsible for any fees related to unsolicited resumes.