Principal Software Engineer - Code Generation

Job Summary

We are looking for a Principal Software Engineer who is good at abstract thinking and algorithm design. Your mission is to develop graph transformations and novel compiler optimization techniques to automatically generate fast and efficient C/C++ and HDL code for algorithms written in MATLAB or Simulink. Knowledge of compilers or program analysis is a plus. As a member of one of the core teams at MathWorks, your work will be leveraged by many teams to expand on the capabilities and customer adoption of our core code generation products for targeting large-scale embedded systems (CPU/GPU/FPGA).

Responsibilities

You will design innovative algorithms and integrate them into our code generation environment to optimize the generated code. You are expected to participate in all aspects of software development: collecting requirements, writing specifications, coding, testing, and collaborating with other teams. You would be required to quickly master numerous features in automatic code generation. As a senior member of the team, you will have an opportunity to work with cross-functional teams and mentor a strong compiler team working on code generation technologies.

Minimum Qualifications

  • A bachelor's degree and 12 years of professional work experience (or equivalent experience) is required.
  • Demonstrated experience in/with C++

Additional Qualifications

  • Strong abstraction and algorithmic skill
  • Experience of working with a large codebase
  • Strong communication skills

Besides, the following skills are highly desirable:

  • Experience with modern compiler technologies, intermediate representations, graph theory, data/control flow analysis
  • Experience or knowledge with multi-threaded programming, inter-process communication, and databases

Why MathWorks?

It’s the chance to collaborate with bright, passionate people. It’s contributing to software products that make a difference in the world. And it’s being part of a company with an incredible commitment to doing the right thing – for each individual, our customers, and the local community.

MathWorks develops MATLAB and Simulink, the leading technical computing software used by engineers and scientists. The company employs 5000 people in 16 countries, with headquarters in Natick, Massachusetts, U.S.A. MathWorks is privately held and has been profitable every year since its founding in 1984.

Contact us if you need reasonable accommodation because of a disability in order to apply for a position.

The MathWorks, Inc. is an equal opportunity employer. We evaluate qualified applicants without regard to race, color, religion, sex, sexual orientation, gender identity, national origin, disability, veteran status, and other protected characteristics. View The EEO is the Law poster and its supplement.

The pay transparency policy is available here.

MathWorks participates in E-Verify. View the E-Verify posters here.

Apply Now