Senior Software Engineer - Code Generation

Hybrid Work Model

MathWorks has a hybrid work model that enables staff members to split their time between office and home. The hybrid model provides the advantage of having both in-person time with colleagues and flexible at-home life optimizations. Learn More.

Job Summary

Apply Now

Simulink is a world-renowned tool for model-based (block diagram) design, where dynamic system models are used to go from concept to simulation to implementation via automatic code generation. Simulink is currently used in the design of every-day-systems (such as cars) to advanced systems (such as space vehicles).

In this position, you will be working on core features and architecture changes that can have an impact on simulation and code generation. This will help you to learn core technologies and apply your design and implementation skills in designing complex software.


As a C++ software developer, you will be involved in extending the “Variants” functionality of Simulink.

In this role, you will enhance the variants capabilities and help evolve the architecture and implementation for simulation and code generation capabilities. Over time, you will gain in-depth knowledge of the Simulink “engine” and be responsible for ensuring its integrity and architectural consistency. In this position, you will be responsible for understanding customer requirements, collaborating with your colleagues to create a design, define the architecture, and do the implementation. You will have the ability to impact the direction of a major feature of Simulink.

Minimum Qualifications

  • A bachelor's degree and 7 years of professional work experience (or a master's degree and 5 years of professional work experience, or a PhD degree, or equivalent experience) is required.

Additional Qualifications

  • Strong abstraction, algorithmic, and software design skills
  • Strong debugging skills for working in a large C++ codebase
  • Software Development Life Cycle experience
  • Good communication and organizational skills
  • Must be self-motivated, able to work independently, and have a strong desire to develop high quality, world-class software
  • Experience with graph algorithms is a plus
  • Experience in code generation area is a plus
  • Knowledge of MATLAB and/or Simulink is a plus
You and MathWorks

Why MathWorks?

It's the chance to collaborate with bright, passionate people. It's the opportunity to accelerate the pace of discovery, innovation, and learning in engineering and science. And it’s a commitment to doing the right thing—for each individual, our customers, and the local community. We cultivate an enjoyable, participatory, and rational environment that champions individual growth, appreciates diversity, encourages initiative, values collaboration, shares success, and rewards excellence.

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

YOU + MathWorks = Unlimited Possibilities

Panel Navigation

Join Our Talent Network

Receive personalized job opportunities, stories, and company updates.

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.