Python Test Developer
Job description
Python Developer – Hardware Test Software & Automation
Location: Reading, UK (3 days per week onsite)
Employment: Contract (3–4 months initial, with potential to extend to 6–8 months)
About Ovyo
Ovyo is a B2B services company providing flexible engineering teams and talent solutions to the streaming, media, satellite, and communications industries. With a global presence across the UK, India, Portugal, South Africa, Brazil, the US, and Eastern Europe, we deliver engineering expertise across long-term client engagements and shorter consulting projects.About the Role
We are looking for a Python Developer to develop software for automated hardware testing within an existing engineering team in Reading.The focus of this role is software development: designing, building, improving, and maintaining Python-based test applications that automate the testing of electronic products and manufacturing equipment.
You will develop test software that interfaces with physical test equipment, including signal generators, spectrum analysers, VNAs, and PCB assemblies. The existing automation environment is at an early stage, providing an opportunity to build new modules, develop reusable software components, and improve the reliability and maintainability of the overall test framework.
This role is ideal for a developer with solid Python skills who enjoys solving problems, writing structured code, and applying software engineering principles to real-world testing challenges. Previous hardware test experience is beneficial but is not the primary requirement.
Responsibilities
- Design, develop, and maintain Python software for automated hardware and manufacturing tests.
- Build reusable modules, libraries, and APIs to support test execution, equipment control, and measurement data collection.
- Translate test requirements into well-structured, maintainable, and production-ready software.
- Develop and improve existing test scripts, refactoring code to meet software development standards and improve readability, reliability, and reusability.
- Integrate software with test equipment, devices under test, and existing test frameworks.
- Debug software, investigate failures, and implement fixes through testing and regression validation.
- Work with existing Python libraries and tools, including NumPy, PyPDF, Scapy, and Tkinter.
- Use Git and established development practices to manage code changes and collaborate effectively with the wider engineering team.
- Work closely with hardware, software, and mechanical engineers to define requirements and deliver effective test solutions.
- Use AI-assisted development tools where appropriate, while ensuring all code is reviewed, tested, and maintainable.
Requirements
- Python Development: Practical experience developing software in Python, ideally at junior-to-mid level.
- Software Engineering: Ability to write clean, structured, reusable code and work with existing codebases.
- Test Software Development: An understanding of automated testing, test frameworks, scripting, debugging, and regression testing.
- Integration & Problem-Solving: Ability to troubleshoot software issues and integrate applications with external systems or equipment.
- Development Tools: Experience with Git, version control, and standard software development practices.
- Engineering Mindset: Proactive, hands-on approach with the ability to take ownership of tasks and iteratively improve solutions.
- Communication: Able to work collaboratively with multidisciplinary engineering teams and communicate technical challenges clearly.
What We’re Looking For
We are specifically looking for a software developer who builds test software, rather than a hardware test engineer whose primary responsibility is operating equipment or carrying out manual testing.The ideal candidate will be confident writing Python, developing reusable software components, improving existing code, and building automation solutions from the ground up. Hardware knowledge is useful, but strong software development skills and the ability to learn the test environment are the priorities.
Interested in this role?