Software Test Engineer
Animal Dynamics… about us
At Animal Dynamics we make vehicles that combine high efficiency with full autonomy and are able to do more with less impact on nature than other vehicles that perform the same tasks. Taking our inspiration from animals and the natural world we can achieve significant improvements in the performance and efficiency of vehicles in water, air, and ground travel.
What motivates us is our desire to create original and worthwhile solutions to real problems. We are motivated to realise designs that will positively disrupt industries and technical approaches that have long been taken for granted.
Our current focus is on two vehicles: a small flying surveillance vehicle, called Skeeter, that is able to fly quietly in high winds; and Stork, a vehicle which has been designed as a highly energy and cost-efficient aerial system for carrying loads. These vehicles are full-stack autonomous vehicles, with complex mechanical, electronic and software features. There is a range of vehicles on our roadmap, and we have demand for these products in a variety of international markets.
Based near Oxford, we are a friendly Company which is growing rapidly. We recruit talented, committed people who want to work in a stimulating and supportive environment.
Overview of the role
We are looking for a Software Test Engineer keen to take the opportunity to establish the software testing in a cutting-edge scientific and research company. You will be responsible for establishing formal software and electronic testing practice and set the precedent for testing moving forwards. You'll be developing and executing manual and automated tests making use of your QA experience to provide recommendations and directly influence the commercial success of the company's products.
Reporting to the Head of Quality & Safety as part of the Testing team, this is a hands-on role and you will hold operational responsibility for the software testing programme in the company. This activity will include a wide range of testing methodologies and protocols to achieve verification and validation status to industry best practice. You will be responsible for all aspects of validation and design verification testing including accuracy, repeatability and that industry standards are always met.
As an established software engineer you will be able to communicate with mechanical, electronic and software engineering teams to help ensure the technical specification is interpreted – for both the products themselves and testing requirements.
Responsibilities… what will you do?
As Software Test Engineeryou will be responsible for:
- Devising, owning and delivery of a comprehensive software test plan for all company products
- Build, manage and maintain automated testing systems including Unit Tests, Continuous Integration, Continuous Deployment, regression testing, and hardware-based testing rigs.
- Organising test data into a structured format
- Achieving Test and Assurance targets in line with project milestones
- Liaison with engineering teams regarding technical capabilities of products
- Coordination of the preparation, verification and execution of testing to ensure compliance with both regulatory and customer requirements
- Development of Automated tests and associated test tools
- Support and management of a continuous integration environment to ensure that software sub-systems are regularly and thoroughly tested
- Performing environmental, performance, system and regression testing of applications
- Support for analysis and corrective maintenance of software anomalies
- Identifying, developing, and implementing new test frameworks to adapt to new product lines
- Compiling rigorous and detailed test reports to meet product technical and regulatory requirements and inform the thinking of the engineering teams
- Processing large volumes of data with the ability to consolidate, interpret and present test data in a format suitable for both technical and non-technical audiences
- Providing test SME advice to the design and development activity in a range of multi-disciplinary engineering teams
- Hold accountability for accuracy and security of test data, supporting others with test protocols and techniques
- Provide support to development of clear product specifications as required
- Provide advice to the engineering teams on usability and function of the product
- Work with the Head of Quality & Safety to develop and improve our testing capability. Devise new testing techniques and provide recommendations
- Provide training and support to customers when required
- Support field or on-site testing arrangements as required
- Conducting any other support activities for company operations that can be reasonably expected for your role and experience
Essential skills and experience… what are we looking for?
You will have the following skills and experience:
- Degree in computer science, electronics/electrical engineering or related field, or equivalent experience
- Significant and demonstrable test experience, including both manual and automated testing experience
- Unit and regression test planning experience
- Experience working with systems developed in C++
- Experience with Software Version Control, particularly Git
- Experience using Continuous integration & continuous deployment frameworks (such as JIRA, Bamboo, Jenkins etc.)
- Experience and understanding of the software development lifecycle as well as testing complex systems involving electronics, software and mechanical design
- Experience of test method validation and working within a regulated test environment
- Demonstrable understanding and experience of Quality Assurance / Quality Control in an engineering context and the ability to define standard working practices to promote repeatability and robustness of test processes
- A methodical and analytical thought process to identify and report system deficiencies quickly, prioritise them and assist in the development of technological solutions
- A confident and accomplished communicator to talk your ideas and findings through with the product teams. Strong report writing experience, including in quick summary reports
- A genuine problem solver with a commitment and focus on quality and rigour
- A self-starter, with minimal oversight needed to complete assignments
- IT literate, including but not limited to MS Office
Desirable skills and experience: -
- Knowledge of Unmanned Aircraft systems, including autopilot design and functionality, airframe, engineering methods, data link, propulsion systems and aerodynamics
- Interest and experience with Linux
- Proficient with scripting languages such as Bash and Python in a Linux environment
- Proficient with modern C++ standards and libraries
- Interest in electronics and system-on-module e.g. Raspberry Pi computers
- Knowledge of Agile/Scrum processes
- Experience with GNU Make and CMake build systems
- Knowledge and understanding of Quality Management (QM) techniques (ISO9001:2015)
- Knowledge and understanding of Safety Management Systems (SMS) techniques
- Proficiency in the interpretation of CAD (preferably SolidWorks)
- An understanding of Product Lifecycle Management including PDM and ERP
Benefits… what do you get?
- Competitive salary, dependent on experience
- EMI share options scheme
- Company discount scheme
- Flexible working
- 25 days annual leave plus bank holidays and 3 days additional leave for Christmas closure
- Pension scheme
This is a full-time position but part-time would be considered for the right candidate.
Note to all applicants
Due to the security classification on the work we do, we will undertake a routine Baseline Personnel Security Standard check on the successful applicant. This is a standard process which includes references and career history checks.
For full details of how we will use your personal data please see our Recruitment Privacy Statement available at www.animal-dynamics.com/rps
All applicants must be eligible to work in the UK.