Summary:
As a Software Developer, you will be responsible for designing and developing applications for the test infrastructure within MathWorks. You will have the opportunity to get involved in areas such as building microservices that incrementally automate workflows, facilitate test failure investigations and enhance test infrastructure efficiency. You will develop in a variety of languages, and implement web services & backend-end services. You will have opportunities to incorporate text analytics & machine learning techniques within the test infrastructure.
Role & Responsibilities:
- Work with Development teams to identify time-critical automated test infrastructure requirements, prototype pilot solutions, and integrate production quality solutions into the MathWorks development processes
- Develop web-based applications to automate test failure reproduction, defect localization, and more.
- Work with the development organization to provide a world-class support experience to the wider MathWorks development organization
- Take ownership of existing software and work on its enhancements such as data-driven test selection, test run-environment configuration, and automated test execution
Minimum qualifications:
- A bachelor's degree and 5 years of professional work experience (or a master's degree, or equivalent experience) is required.
Additional qualifications:
- B.E/B.Tech or M.E/M.Tech in Computer Science, Engineering or relevant technical field
- Strong knowledge in one of Go/Node.js/Python/Perl. Knowledge of multiple languages is a plus
- Hands-on experience with object-oriented design and programming
- Comfortable with interface design and refactoring
- Familiarity with full-stack Web development using relevant technologies
- Demonstrated commitment to delivering high-quality software
- Exposure to industry standard Software Development practices such as; Unit Test Frameworks, Iterative Development, CI/CD
- Strong ability to work independently as well as with highly cross-functional teams
- Superior analytical and problem-solving skills
- "Toolsmith" attitude, craftsman, enjoys writing utilities and automating processes to streamline development
- Excellent oral and written communication skills