The role 

As part of the Integration team, you will be involved in the entire validation process for embedded software and firmware. You will be responsible for preparing, developing and executing test campaigns, as well as analysing and following up on test results. 

Your main responsibilities will include: 

Test analysis and preparation 

  • Analyse functional and technical specifications
  • Work closely with software and firmware developers to understand the expected behaviour of features. 
  • Identify and formalise testable requirements
  • Design appropriate test cases and test scenarios
  • Identify risks, edge cases and specific scenarios requiring particular attention. 
  • Define the conditions and acceptance criteria required to validate features. 

Test development and automation 

You will actively contribute to improving and automating the validation process: 

  • Develop and maintain automated tests
  • Use Python to develop test scripts and tools. 
  • Use Robot Framework for test automation. 
  • Work in an Ubuntu/Linux environment. 
  • Integrate automated tests into a Continuous Integration (CI) process. 
  • Contribute to the continuous improvement of the test environment and tools. 

Test execution and validation 

You will select and implement different testing techniques depending on project requirements, including: 

  • Functional testing. 
  • Non-functional testing. 
  • Regression testing. 
  • Exploratory testing. 
  • Automated testing. 

You will analyse test results and contribute to validating that the implemented features meet the defined requirements. 

Defect management and follow-up 

You will be responsible for identifying and following up on defects encountered during the validation process: 

  • Identify, reproduce and characterise defects. 
  • Document defects clearly and accurately. 
  • Track issues through to resolution. 
  • Work closely with developers to support root-cause analysis and problem resolution. 
  • When required, analyse source code to help identify the root cause of an issue. 

Reporting and communication 

You will provide regular and transparent reporting on validation activities, including: 

  • Tests performed and test coverage. 
  • Tests that could not be performed and the reasons why. 
  • Test results. 
  • Defects identified and their level of criticality. 
  • Risks and key points requiring attention. 
  • Progress of ongoing test campaigns. 
  • Quality and validation metrics, where relevant. 

Agile activities 

As part of an Agile organisation, you will participate in: 

  • Daily Scrum meetings. 
  • Sprint Reviews
  • Retrospectives / lessons learned (RETEX)
  • Refinement / backlog refinement activities. 

You will bring your expertise to discussions around testability, risk identification, acceptance criteria and test effort estimation. 

Testing in a real-world environment 

You will also be responsible for preparing and carrying out test campaigns in a dedicated test area, with electric vehicles and EV charging stations. 

As part of this activity, you may work in an industrial environment involving electrical equipment. An electrical safety certification/authorisation will therefore be required before you can operate in this area. The necessary training and certification will be provided as part of your onboarding. 

About you 

You have a Master’s degree (Bac+5) in Computer Science, Software Engineering, Embedded Systems or a related field, and ideally at least 2 years of professional experience in Python development and/or software validation. 

You have experience and knowledge in the following areas: 

  • Experience in software development or validation in a Linux environment. 
  • Experience with automated software testing
  • Experience in an industrial environment, ideally involving electronic equipment or embedded systems, would be a strong advantage. 
  • Professional experience or solid knowledge of Python
  • Knowledge of Robot Framework

Technical skills 

To be successful in this role, you should have: 

  • Strong knowledge of the Linux/Ubuntu environment. 
  • Strong knowledge of Git
  • Good command of Python
  • Good written and spoken technical English
  • Comfortable working with test tools and software. 
  • Ability to read and understand C/C++ and Python code
  • Ability to modify and adapt existing C/C++ or Python code
  • Knowledge of automated testing and Continuous Integration (CI) principles. 
  • Knowledge of Agile/Scrum methodologies. 
  • Knowledge of Inter-Process Communication (IPC) mechanisms. 
  • Good understanding of network architectures and protocols
  • Knowledge of common embedded communication protocols such as CAN, I²C, SPI, UART, etc. 
  • Knowledge of CANalyzer

Soft skills 

You are recognised for your: 

  • Autonomy and ability to take initiative. 
  • Rigour and attention to detail. 
  • Strong analytical and synthesis skills
  • Team spirit and willingness to share knowledge. 
  • Strong organisational skills and ability to manage priorities. 
  • Ability to handle unexpected situations and demonstrate resilience
  • Perseverance and problem-solving mindset. 
  • Strong communication and interpersonal skills
  • Ability to manage your time and workload effectively. 

Why join EVBox? 

At EVBox, you will have the opportunity to actively contribute to the energy transition while working in a cutting-edge technological sector. 

You will join a human-sized organisation strongly focused on innovation, technical expertise and the development of fast-charging solutions, where cross-functional collaboration is encouraged and valued. 

You will have the opportunity to discover our R&D centre and facilities in Léognan, work alongside our technical teams and contribute to concrete projects that have a direct impact on the future of mobility. 

Whether you are a recent graduate or an experienced professional, EVBox offers you the opportunity to develop your skills within a passionate team, working on technologies that are at the heart of the energy transition.