We are looking for a highly skilled Senior Integration Test Engineer to join our team in the development of the Power Automation Software Operations Platform (PASOP). The primary focus of this role will be to design, develop, and implement an integration testing framework from the ground up. This includes conceptualizing the framework, selecting the appropriate tools, deploying it on physical hardware, implementing and executing tests, integrating the testing pipeline, and generating and displaying reports on a dashboard.
Our platform is built on microservices that communicate over a single bus. The services themselves are written in C++, and the entire platform supports deployment on both ARM devices (with a custom Linux distribution based on the Yocto Project) and x86 devices (Debian 12).
Responsibilities
- Design and develop a comprehensive integration testing framework.
- Select the appropriate testing framework and ensure its effective deployment on physical hardware.
- Implement and execute a wide range of integration tests, including firmware updates, configuration generation and deployment, PLC integration, I/O module management, certificate management, time synchronization, inter-device communication testing (using protocols like IEC), end-to-end tests with UAL, and minor UI tests.
- Maintain and manage the test setup, including hardware components.
- Provide support in developing performance tests.
- Contribute to the evolution of test strategies and testing processes.
- Collaborate with the development team to ensure seamless integration of testing with the CI/CD pipeline and to generate comprehensive test reports.
- Display test results on a dashboard for real-time monitoring and analysis.
Requirements
- Extensive knowledge of testing strategies and test frameworks.
- Strong programming and scripting skills, particularly in Python, C++, and bash.
- Proficiency with the pytest framework or similar testing tools.
- Significant experience in test automation, with a focus on integration testing.
- Solid understanding of both Windows and Linux operating systems.
- Experience with industrial devices and embedded systems is a strong plus.
- Excellent problem-solving skills and attention to detail.
- Strong communication skills and the ability to work effectively in a collaborative team environment.