Senior Software Engineer in Test - DevOps
MathWorks
Senior Software Engineer in Test - DevOps
Job Summary
- Job: 30961-LLAN
- Location: US-MA-Natick
- Department: Information Technology
MathWorks is seeking an innovative and passionate Software Engineer in Test with demonstrated experience in software testing methodologies in a highly collaborative, fast-paced, agile environment. In this role you will be responsible for the quality of our front-end UI, backend, middleware, and automation components of the Enterprise DevOps Platform used to build, test, deploy, observe, and operate Enterprise Applications, Databases, and Web Services. You will engage early in the software development process, influencing requirements specifications and discussing software design and testability with engineers, to ensure high quality of our platform. You will act as a liaison for quality issues, develop written technical test plans, create, and run specific test scenarios, and develop automated test suites.
Responsibilities
- Work closely with enterprise and operations teams to define and build tooling and automation that simplifies the software development lifecycle, encourages best practices, and provides frequent, incremental & high-quality releases
- Responsible for testing web services, applications, UI and APIs (automated and manual)
- Partner and collaborate with the platform engineers to determine CI/CD pipeline testing strategy for code merging, building, validation, deployment, and monitoring
- Participate in functional, system integration, and acceptance testing to ensure all areas of the platform are fully tested and issues are clearly logged and prioritized consistently
- Define the test automation framework, approach and guidelines and work with the team to implement scripts to automate the validation of Enterprise DevOps platform
- Influence quality engineering best practices through every aspect of DevOps platform design and implementation
- Participate in the design, development of efficient CI/CD pipelines to provide productive developer experience for enterprise teams
- Ensure all coding solutions follow quality engineering processes and best practices including unit test, code reviews, and automation.
- Provide support and mentoring for engineering staff in the use of enterprise DevOps platform tools and continuous testing best practices
- Act as quality champion and advise on all aspects of quality engineering including applying industry best practices, developing new tools and processes, and establishing metrics to ensure quality goals are met
Minimum Qualifications
- A bachelor's degree and 6 years of professional work experience (or a master's degree and 3 years of professional work experience, or a PhD degree, or equivalent experience) is required.
Additional Qualifications
- Strong understanding of software quality principles and processes
- Demonstrated experience in analyzing functional requirements and authoring comprehensive testing strategies, test plans for complex application architecture
- Demonstrated experience in successfully leading large scale testing engagements liaising with multiple teams and stakeholders
- Automated testing experience with testing solutions using Java, Selenium or JavaScript (Cypress, Puppeteer, Protractor)
- Experience in functional testing and automation of RESTful APIs
- Solid knowledge of DevOps methodologies and tools (CNCF, CI/CD, Secrets Management, Containers, Container Registries, and Container Orchestration)
- Solid experience with one or more programming languages (Python, Java, JavaScript, Go)
- Experience working with build, test, and deployment tools (Maven, Gradle, Jenkins)
- Experience working with Source Control Management Systems (GitLab, GitHub)
- Experience working with container and container orchestration (Docker, Kubernetes)
- Experience with Cloud computing architectures (IAAS, PAAS, etc.) and technologies
- Experience working in an agile environment and with project management tools (JIRA, etc.)
- Proficiency in SQL and database concepts