Seeking a strong programmer and problem-solver to develop engineering productivity apps used by MathWorks product developers. You will love this role if
You take pride in developing high-quality software and dislike shortcuts and hacks
You love developing apps that make the software engineering process more efficient
You enjoy sharing coding best-practices
You love learning many facets of computer programming - variety of programming languages, operating systems, networking, distributed computing, web, etc.
As part of a new team in Bangalore, you will be developing tools and apps that are used by MathWorks product developers when developing software. Example tools include extensions to code analysis tools that look for coding problems. For example, custom clang-tidy extensions. This team develops tools and processes to unblock and empower product developers, so they can create the products that our customers use to accelerate the pace of engineering and science.
Each MathWorks product developer uses one of the platforms that we support our products on (Windows/Mac/Linux). Our development team builds the foundation that product developers use. This is a large set of applications that cover a wide variety of system level programming areas.
Develop new and extend existing tooling to improve the experience of MathWorks developers building MATLAB and Simulink. This includes tooling used to create development environments, manage git state, customize editors, search and navigate MathWorks huge code base and more.
Your responsibilities will include:
Advance existing applications by adding features
Develop new tooling to meet new needs and opportunities, going from minimal-viable-product to full production use.
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.
Experience with systems-level programming on Linux or Windows a plus.