As an Off-Board Technologies/MMOTA Software Test Engineer, you will be a critical part of a team dedicated to ensuring the highest quality and reliability of vehicle software update pipelines. Your primary focus will be on the end-to-end testing of Over-The-Air (OTA), Service, Human-Machine Interface (HMI), Mobile Apps, and Manufacturing software update processes. You will rigorously test the download, installation, and activation stages to guarantee that all software binaries and configurations are applied precisely as intended, contributing to a best-in-class infotainment system and seamless customer experience.
Develop and execute comprehensive functional test scenarios and test cases, leveraging user stories within Agile Sprints.
Collaborate closely with development teams to understand testing requirements and ensure all project requirements are clearly defined and testable.
Prepare, configure, and maintain necessary test benches, vehicles, tools, and software environments to facilitate thorough test execution.
Log all test results (pass/fail) following the merge of related test codes into Master, and meticulously debug any failures to ascertain their root cause, ensuring that only valid defects are accurately entered into the defect tracking system, JIRA.
Work in conjunction with feature engineers to efficiently reproduce and troubleshoot defects identified within the system.
Actively participate in root-cause analysis for both hardware quality problems and software defects.
Contribute to system design discussions, documentation efforts, and overall testing strategy to deliver a robust and high-quality infotainment system.
Provide accurate time estimates for testing-related tasks during sprint planning sessions to support effective project scheduling.
Perform corrective and predictive maintenance on hardware laboratory nodes to ensure they remain in satisfactory condition and functionality for continuous testing.
Analyze the root cause of software failures to correctly prioritize them for subsequent fixing, providing timely validation rounds for both manual and automated tests.
Contribute to the enhancement of test automation development, optimizing existing processes, validating new features, and supporting testing efforts for upcoming vehicle programs.
Identify and propose areas for continuous improvement across all facets of testing and velocity tracking.
Utilize Test Management tools for test planning review, execution, monitoring (including proficient key metrics interpretation), and comprehensive reporting of test results.
Provide detailed feedback and comprehensive bug reports to foster high-quality software delivery and efficient testing workflows.
Software Testing - Conduct comprehensive software testing on a new mobile application release designed to initiate vehicle software updates, verifying its functionality across various operating systems and network conditions to ensure reliable update scheduling and status reporting.
Testing - Tools - Utilize JIRA to log a newly discovered defect related to an HMI software update failing to install, providing detailed reproduction steps, logs, and screenshots, and then track its resolution through the development lifecycle.
Test Execution - Execute a suite of manual and automated test cases on a physical vehicle to validate the successful activation of a newly installed OTA software update, confirming all new features are operational and no regressions have been introduced.
Test Integration Testing - Perform integration testing to ensure seamless communication and data flow between the cloud-based OTA update server, the vehicle's telematics unit, and the HMI system during a software update, verifying the entire end-to-end pipeline functions cohesively.
Test Cases, Analytical - Analyze user stories and system design specifications for a new infotainment feature to design comprehensive and analytical functional test cases, including edge cases and negative scenarios, to ensure all aspects of the feature's behavior are thoroughly validated post-software update. 1
Test Planning - Develop a detailed test plan for the next sprint's OTA software update, outlining test scope, resources, entry/exit criteria, and estimated timelines for manual and automated testing activities, collaborating closely with the development team.
Skills Preferred:
Technical Writing - Document the detailed steps and configurations required to set up a new test bench environment for OTA software updates, ensuring clarity and precision for other engineers to replicate the setup accurately.
API - Utilize an API testing tool (e.g., Postman) to validate the responses and data structures of the backend APIs responsible for managing vehicle software update campaigns, ensuring that the correct binaries and configurations are being delivered to the vehicles.
Python - Write a Python script to automate the parsing of vehicle diagnostic logs and testing data after an OTA update failure.
Code Assessment - Review a new piece of software code developed for an infotainment feature, providing feedback to the development team on potential areas that could lead to testing challenges or impact testability, such as missing error handling or complex logic.
Automated Scripting - Develop and maintain automated scripts using a scripting language (e.g., Python) to perform repetitive tasks like flashing vehicle ECUs with new software builds, collecting system logs, or initiating and monitoring automated test sequences on a test fleet.
Experience Required:
Bachelor's degree in Computer Science, Computer Engineering, Electrical Engineering, Mechanical Engineering, Software Engineering, or a related technical field.
1-5 years of experience in software testing, preferably within embedded systems, automotive, or similar complex software environments.
Proven experience in developing and executing functional test scenarios and test cases.
Familiarity with Agile development methodologies and working with user stories. - Hands-on experience with defect tracking systems (e.g., JIRA) and test management tools.
Demonstrated ability to perform root-cause analysis and debug software failures
Experience Preferred:
Proven experience in developing and executing functional test scenarios and test cases.
Familiarity with Agile development methodologies and working with user stories.
Hands-on experience with defect tracking systems (e.g., JIRA) and test management tools.
Demonstrated ability to perform root-cause analysis and debug software failures
Education Required:
Bachelor's Degree
Additional Information :
Test Unit Testing - Collaborate with development teams to understand the scope and coverage of uni