My design and manufacturing client is looking for a Software Test Engineer reporting to the Principal Software Engineer. Hybrid work pattern could be an option.
The position involves, testing embedded software - both as Unit Test (test code that tests production code) and System Test (test fixtures and button pressing to test the product)
Scope of the role
Fundamentally responsible for Improving software Velocity and quality products.
Deliver software engineering expertise to the Technical Manager, Program Manager, and wider business, and will primarily be responsible for testing, verification, and production of the software aspects of the company’s products and systems. Improvements to the testability and test environments through automation will be of wider benefit to the company as we expand into more technical based products.
Responsible for continuous improvement of the software engineering process and its wider proliferation, and will support system analysis, modelling, development, assembly, testing, qualification, reliability improvement and planning required for the successful demonstration of a fully operational system.
The role will contribute to driving change and action within the NPI and Operations teams and will join an agile hardware and software development team designing, building, and integrating safety related electronic control and HMI based systems. This role will also provide support to operations software such as the introduction of manufacturing execution systems (i.e.Tulip) and production testing equipment.
Key Responsibilities
- To work within the team to provide the software testing, validation, and release to production, in the maintenance of our existing products and delivery of our next generation products.
- learn the existing products (applications and embedded software) and write test cases to improve the test coverage, create and analyse the defect reports to support the maintenance and development of the code by the software engineers.
- Test cases will be at the unit and system test level and will include hardware in the loop testing using systems such as National Instruments and LabVIEW.
- To support the development of new products ensuring that they are designed with testability and automated testing in mind.
- To provide value-based continuous improvement to the software engineering processes to reduce cost and increase consistency and quality.
- Play an active role in troubleshooting system level failures amongst a diverse team of engineers and technicians.
- Provide wider support to the business with the introduction of manufacturing execution systems (MES) with the architecture design and implementation of applications in Operations.
Background and Skills
Essential
- Bachelor’s or master’s degree in software, Electronics Engineering or related field, or similar comparable experience.
- Experience with Visual Studio for C, C++ C# development.
- Experience with MPLAB-X for C development for PIC, PIC32 and PIC24, safety related software and automated verification methods, including unit testing and hardware-in-the-loop test.
- Experience with modern embedded processors for low power and safety related applications.
- Experience with Continuous Integration pipeline delivery and maintenance, software release processes.
- Understanding of Model-Based System Engineering (MBSE) concepts throughout project lifecycle to include familiarity with Sparx Enterprise Architect, Cameo Magic Draw or equivalent and knowledge of SysML & UML 2 implementations.
- Knowledge of risk, issue, and opportunity management and mitigation techniques and tools such as risk matrix, fault tree analysis, failure mode and effects analysis, waterfall diagrams, and mitigation plans.
- Experience with requirements development, derivation, traceability, and impact analysis through requirements analysis and requirements management practices and techniques in accordance with relevant standards.