Senior Software Verification Engineer
CIeNET International
Warren, michigan
Job Details
Full-time
Full Job Description
- Analyze the software system requirements and architecture and help estimate efforts to develop and test the software.
- Understand product/software system requirements/architecture and develop high-level and low-level designs for the development and testing of software.
- Follow Test Driven Development methodology and develop automated unit tests for white box and coverage testing.
- Work on developing test plans, test cases, and test scripts to verify the developed software.
- Apply Statistical Methods and Data Analysis to design test strategies and methodology to provide optimal test coverage to verify the software.
- Use Statistical Methods and Data Analysis of the test results from test execution cycles to improve test strategy, case development, and test execution.
- Work on test automation tools and test script development using Java, C/C++, Python, and XML.
- Integrate, optimize, and debug third-party software modules and tailor and port software to designated hardware and mobile devices.
- Implement verification design into automated verification tools – includes writing the automated verification tools and automated verification scripts as per the design to perform system and requirement verification.
- Perform setup of software and hardware tools, devices, and modules and maintain test devices, benches, and vehicles used in the development and test environment.
- Perform various phases of Software verification, including – Unit, Functional, Integration, Regression, Stability, and Performance Testing.
- Report software problems and bugs into the Issue tracking system (like Jira, RTC, etc.) and provide failure details and logs to help with issue resolution
- Provide detailed status and comprehensive communication reports to the project, company, and customer management teams.
- Adhere to development processes and quality, generate and monitor the required metrics (Code Coverage, Performance, etc.).
Requirements
Knowledge and Skills Applied:
- Computer Science and Software development and testing fundamentals and a thorough understanding of verification methodologies, strategies, and tools.
- Embedded operating systems like Android, QNX, Linux, etc.
- Android and Infotainment software systems and Framework and application software for Android platform, mobile, automotive, and Infotainment software.
- Automotive networks and protocols (CAN, LIN, MOST, Ethernet AVB) using testing tools for these protocols.
- Embedded software systems – like vehicle control (Telematics, CAN, LIN, and Ethernet AVB), navigation (GPS, Maps), connectivity (WiFi, Bluetooth, and Cellular), multi-media (Audio, Video, and Radio), and automotive (In-vehicle applications) systems
- Automated testing frameworks, simulation, converting manual tests to automated tests, and executing, analyzing, and reporting automated test runs on multiple software versions and releases.
- Languages: Java, C/C++, Perl, Python, XML, Windows, and UNIX shell.
- Phases of software verification include Unit, coverage, Functionality, integration, regression, stability, and performance testing.
- Software versioning, issue tracking, software build, and analysis systems.
Required Education and Experience:
Master’s degree in Computer Science, Information Engineering, Applied Mathematics, Applied Statistics, Communication/Electrical Systems, or equivalent + 2 years of work experience.
Benefits
- Full-time salaried position
- Excellent Health Benefits
- PTO and Sick Leave
- 401K Matching
- This is NOT a remote position