Software Test Engineer – NeuraGym
Your Mission & Challenges
We are looking for a hands-on Software Test & Release Engineer to join the NeuraGym team. In this role, you make sure every software release that reaches the NEURA Gym works. You execute software and release tests based on the defined test strategy and report clear, reliable results to the release owners. With a strong understanding of the overall system, you connect software, robot hardware, sensors and data recording, and you run hands-on tests directly on our robots and recording setups.
What you will do
Execute tests according to the defined test strategy for software running in the NEURA Gym: robot software, data recording tools, teleoperation and data pipelines
Plan and run release tests, regression tests and acceptance tests, and report results as input for the release decision
Run hands-on system and integration tests on robots, sensors and recording stations – including hardware-in-the-loop setups
Verify that recorded training data meets quality requirements (completeness, synchronization, labelling, metadata)
Build and extend automated tests and integrate them into CI/CD pipelines
Analyse failures across the full stack, reproduce issues and work with developers on root causes
Design and implement new test cases to continuously improve our testing pipeline
Document test cases, results and known issues, and track defects through to resolution
Work closely with software development, robotics, AI/data teams and Gym operations, and suggest improvements to test cases and processes
What we look forward to
Bachelor's or Master's degree in Computer Science, Robotics, Mechatronics, Electrical Engineering, or a related field
4+ years of professional experience in software testing, test automation, release management or software engineering in test, ideally on robotics, simulation, or other complex distributed systems
Strong software engineering fundamentals and proven experience building automated test systems
Strong programming skills in at least one of the following languages: Python, C++, Rust or TypeScript
Strong system understanding: you know how software, hardware, sensors and networks interact and can debug across these boundaries
Deep understanding of testing methodologies (unit, integration, system, regression, end-to-end)
Hands-on experience with test automation frameworks (e.g. pytest, BDD)
Experience with CI/CD pipelines, Git, Ansible, and Linux-based development environments
Familiarity with ROS/ROS2, DDS, Zenoh and robotics software architecture
Excellent analytical and debugging skills combined with systems-level thinking
Ability to work in a fast-paced, cross-functional environment alongside software, robotics, and AI teams
Nice to have
Understanding of robotics fundamentals: kinematics, dynamics, sensors (cameras, LiDAR, IMU, force/torque), and motion control
Working knowledge of C++, e.g. to read, debug, and test performance-critical simulation or ROS2 components
Extensive knowledge of modern network topologies and design principles
Experience with Software-in-the-Loop (SIL) and Hardware-in-the-Loop (HIL) testing
Experience with cloud-based test infrastructure, containerization (Docker, Kubernetes), and large-scale distributed validation
Familiarity with industrial and robotics communication protocols (e.g. EtherCAT, CAN, Modbus)
What we offer
A key role at the interface of robotics, software and AI – your work directly shapes the quality of the data our robots learn from
Hands-on work with state-of-the-art cognitive robots every day
A fast-growing, international team with short decision paths
Room to contribute your ideas to our test and release processes robotic systems