Title: Software Developer in Test – Battery Software Verification & Validation
Location: Palo Alto (Open relo, hybrid – 4 days onsite)
Duration: 12+ Months Contract
Interview Mode: Video
Job Description:
These folks will likely need automotive experience. However, folks from medical devices, aerospace, or sometimes robotics also work.
- needs people who can write python and have familiarity with ECU firmware.
- Most importantly, the ideal candidate(s) will need to have experience in pytest, and write test cases in pytest to validate software.
Key Responsibilities
Test Development & Execution
- Create and execute test plans, test cases, and test scripts to validate functional, non-functional, and regression testing for embedded software components.
- Design, develop, and maintain automated test frameworks, scripts, and tools for testing embedded software systems in automotive environments.
Cross-Functional Collaboration
- Collaborate with cross-functional teams to:
- Review requirements for completeness and testability.
- Analyze and provide feedback on system architecture.
- Derive test scenarios from requirements, use cases, and system design analysis.
- Work collaboratively with development teams to develop and test in tandem, troubleshoot and resolve bugs and issues, and drive high-quality software through iterative development and automation.
Quality & Continuous Improvement
- Participate in code reviews and provide feedback on testability and maintainability.
- Contribute to the continuous improvement of testing processes, methodologies, and best practices.
Required Qualifications
- Bachelor's degree in Electrical Engineering, Computer Science, or a related field.
- Experience validating EV battery management software.
- Strong debugging skills and the ability to triage nightly regression failures.
- Minimum of 5 years of experience in battery software testing, preferably within embedded automotive systems.
- **Must be able to write test cases in Pytest to validate software
- **ECU firmware understanding
- Strong programming skills in Python, C/C++, or other relevant programming languages used in embedded software development and verification.
- Experience with automated testing tools and frameworks such as Pytest, Slash, Jenkins, Robot Framework, or similar.
- Experience with software testing tools, frameworks, and methodologies including:
- Unit Testing
- Integration Testing
- System Testing
- Automated Testin