Software Engineer - C++ Testing Infrastructure


  • Natick, Massachusetts

  • Published : 2022-11-11
  • Share:

Job Description



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: You will work with a team of engineers focused on developing and evolving C/C++ core testing frameworks, infrastructure, system architecture and affiliated testing tools that help MathWorks engineering teams produce stable, high-quality code quickly. MathWorks nurtures growth, appreciates diversity, encourages initiative, values teamwork, shares success, and rewards excellence. In this position, you will build test framework, tools and systems to measure code coverage, memory, performance of C/C++ code. Responsibilities will include: Design and development of next generation tools and interfaces for measuring C/C++ code's quality (e.g., benchmarking frameworks, memory testing frameworks and code coverage tools) Follow advanced C/C++ testing frameworks and tools standards, such as GoogleTest, Google Benchmark, Sanitizers. Coverage tools, and develop custom toolings. Adopt and extend open source projects for internal tools development. Write high quality unittest for the test framework and document its usage as a product.  You will help the C/C++ development community across all product areas on related test framework issues. Proficient programming experience in C/C++ (STL, Boost) Experience using at least one C++ debugger such as Visual Studio and/or gdb Experience using memory or profiling related tools (e.g. Valgrind, MATLAB profiler) Experience using performance testing frameworks (e.g. Google Benchmark) Experience using or developing one or more unit testing frameworks (e.g. Google Test, CppUnit, xUnit) Familiar with code coverage measurement tools (e.g. gcov, Bullseye) Excellent C/C++ troubleshooting and debugging skills An understanding of gcc/clang sanitizers a plus (e.g. ASan, UBSan, LSan, TSan, HWASAN) Some MATLAB experience is a plus Some GNU Makefile experience is a plus Experience with scripting languages like Python, Node.js is a plus A bachelor's degree and 5 years of professional work experience (or a master's degree, or equivalent experience) is required.

There is something wrong with this job ad? Report the error