Principal C++ Software Engineer

The MathWorks, Inc.
Natick, MA, United States
2 months ago

Role details

Contract type
Permanent contract
Employment type
Full-time (> 32 hours)
Compensation
$257,300.0
Working hours
Regular working hours
Job source

Tech stack

Adobe InDesign Application Programming Interfaces (APIs) Artificial Intelligence C++ (Programming Language) Static Program Analysis Code Review Software Debugging MATLAB Mathworks Solid Principles Programming Languages

Job description

We are seeking a Principal Software Engineer to work on the core programming language and runtime systems that form the foundation of MATLAB. In this role, you will help design, implement, and evolve the language semantics, execution capabilities, and runtime infrastructure used by millions of engineers and scientists worldwide.

This is a hands-on, technical role focused on building and modernizing foundational systems-improving language consistency, advancing performance and correctness, and refactoring long-lived subsystems to support new capabilities, composable execution, and AI-assisted development workflows.

MathWorks nurtures growth, appreciates inclusivity, encourages initiative, values teamwork, shares success, and rewards excellence.

  • Design and implement enhancements to programming language features, execution semantics, and core runtime behavior, with attention to performance and correctness.
  • Lead and contribute to large-scale refactoring efforts, improving modularity, clarity, and testability of mature systems while preserving external behavior and compatibility.
  • Evolve internal APIs and abstractions that enable other teams to build language features, tooling, and integrations safely and efficiently.
  • Diagnose and resolve complex cross-cutting issues related to execution behavior and interactions between subsystems.
  • Participate in design reviews and architecture discussions, helping shape the long-term technical direction of the language and runtime.
  • Mentor other engineers through code reviews, technical discussions, and shared ownership of foundational systems.

Requirements

Do you have experience in Tooling?, Do you have a Bachelor’s degree?, * Strong understanding of software design principles and maintainable architecture in large systems.

  • Experience with AI-driven development workflow and automation.
  • Ability to independently drive complex technical work from problem definition through implementation and delivery.
  • Experience working effectively in large, long-lived codebases with many users and dependencies, including large-scale refactoring efforts.
  • Experience developing performance-critical systems.
  • Familiarity with developer-facing tools such as debuggers, static analysis, or language tooling.

  • Expertise with C++
  • A bachelor’s degree and 10 years of professional work experience (or equivalent experience) is required.

Benefits & conditions

4.14.1 out of 5 stars Natick, MA Hybrid work $257,300 a year

Apply for this position

This job is hosted externally. Click below to view the full posting and apply.

Apply on indeed.com

Good distractions

Talks and stories from around this role — technically off-topic, practically not.

4:18 min

Prioritizing communication and structural awareness over strict tool mastery

Liam Hurrel +1 · WWC 2021

3:39 min

Addressing code review surrender and process exploitation

Laura Tacho Laura Tacho · WWC Europe 2026

2:40 min

Motivations for transitioning legacy MATLAB repositories to Python

Michael Niebisch Michael Niebisch · WWC 2024

2:14 min

Custom domain controllers and vehicle communication networks

Denis Grahovac · WWC 2021

1:20 min

Identifying multi-disciplinary talent for developer experience engineering roles

Hazal Mestci +1 · Coffee With Developers

56 sec

The hidden costs of delayed peer code reviews

Tim Gilboy Tim Gilboy

Videos

See all

Related articles

See all