Job Role: Software Engineer (3) - Core
Engineer 3
Job Location: Dearborn, MI
Position Description:
- We are seeking a highly
motivated and experienced Software Test Automation Engineer to join our
team, focusing on comprehensive ECU-level (L2) testing for BCM feature
application within the FNV3.x architecture. This role is critical for
ensuring the quality, reliability, and performance of our embedded software
components through robust test design, automation, execution, and continuous
improvement. The Body Control Software team is a team dedicated to creating
Body Control Application Software components, developing and enhancing existing
software components that integrate with existing architectures, as well as our
next-generation vehicle systems.
Skills Required:
- Embedded Software, Embedded
Systems, Coding, C++, Matlab, Python, Test Automation, Software Testing
Experience Required:
- Engineer 3 Exp: Prac. In 2
coding lang. or adv. Prac. in 1 lang. 6+ years in IT; 4+ years in development
Experience Preferred:
- Bachelor of Science in
Computer Science, Computer Engineering, Electrical Engineering, Electrical
& Electronics Engineering, or Software Engineering - 6+ years of Automotive
Software Test Automation Experience - 3+ years of Body Control
Software Verification experience - 2+ Experience integrating
automated tests into CI/CD pipelines. - 2 + Proven experience in
software testing, particularly L2 (ECU-level) testing. - Demonstrated 3+ experience
with test automation framework development and script implementation (e.g.,
Python, CAPL). - 2+ years of Proficiency in
test case design, TestRail, and management tools (e.g., TestRail, Jama). - 1+ Years of experience
working with Agile framework.
Education Required:
- Master's Degree
Additional Information :
- Software Requirements
Analysis: Analyze software requirements to inform test strategy and ensure
comprehensive test coverage. - Test Case Design &
Review: Design, author, and review detailed L2 test cases in TestRail, covering
various testing types including Smoke Test, Sanity Test, Feature Regression
Test, and Stability Test. - Test Environment
Configuration: Configure and integrate a wide array of test tools, including
test management systems, defect tracking systems, test automation frameworks,
measurement tools, and debuggers. - Test Script Implementation:
Develop, automate, and maintain robust test suites and scripts (e.g., using
Gtest, Python, frameworks) and integrate them into CI/CD pipelines to provide
continuous feedback on component quality. - Automated Test Execution:
Oversee and perform automated test execution for nightly engineering, and
release builds, ensuring comprehensive logging and monitoring of results. - Defect Management: Identify,
report, and analyze test failures to pinpoint defects. Manage defect tracking
and retesting activities to ensure timely resolution. - Reporting & Analysis:
Generate detailed test execution reports, summarizing pass/fail rates,
execution progress, and test coverage metrics. - Coverage Analysis: Conduct
thorough analysis of test coverage metrics (e.g., requirement coverage, code
coverage, interface coverage) to identify gaps and drive continuous improvement
in testing. - Root Cause Analysis (RCA):
Investigate test failures to determine the root cause, distinguishing between
defects in the System Under Test (SUT), test environment issues, or problems
within the test case/script itself. - Maintenance & Continuous
Improvement: Proactively update test cases and automation scripts to reflect
changes in requirements, design, or bug fixes. Drive continuous improvements in
test coverage, particularly by expanding negative scenario use cases.