About
The Mathworks
Job Description
Search for more jobs
Software Engineer
Job Summary
Apply Now
* Job: 21243-DCOL
* Location: US-MA-Natick
* Department: Product Development
Working under the direction of the Engineering Manager, will be responsible for developing new features and infrastructure to enable MathWorks application developers to build more effective MATLAB applications; supporting software developers using the MATLAB language, including object-oriented programming capabilities; gathering requirements, designing, implementing, testing, and maintaining new applications and interfaces; supporting application authors and their needs for building C++ based object-oriented tools for MATLAB; leveraging new features of C++11/14 in library design; working closely with Quality Engineering to develop testing strategies for new features; and supporting the adoption of new features by working closely with other development teams.
Responsibilities
Qualifications
Minimum Qualifications:
Education and Experience:
Master's degree or higher (or foreign education equivalent) in Engineering, Computer Science, or Management Information Systems and no experience.
OR
Bachelor's degree (or foreign education equivalent) in Engineering, Computer Science, or Management Information Systems and five (5) years of experience in job offered or five (5) years of experience in object oriented design and programming.
Special Requirements:
* Demonstrated expertise writing algorithms using C++ 11/14 standard libraries -- smart pointers, move semantics, templates and lambda functions -- and using C++ STL libraries to improve memory management and code quality.
* Demonstrated expertise using C++ concurrency libraries (Boost and Std) including locking mechanisms -- mutexes, upgrade locks, shared locks, unique locks, atomic data types and data structures -- to support concurrency.
* Demonstrated expertise evaluating C++ code performance and memory allocation on Windows and Linux systems using debugging and profiling tools -- GDB, Visual Studio, or Valgrind -- and using interfaces implemented in multiple languages -- C++ and MATLAB.
* Demonstrated expertise using UML modeling tools -- Enterprise Architect or Eclipse -- to design and document object oriented programming software in C++ or Java.
[Expertise may be gained during Graduate program.]
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 4000 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.
About The Mathworks
MathWorks is a developer of mathematical computing software for engineers and scientists.