About The Position

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 tests and tools on embedded software systems in automotive environments, including application-layer firmware, infotainment/UI, and multimedia. Design, build, bring-up, and scale remotely accessible test stations with production-intent hardware and peripherals, for accurately represent automotive environments. Review requirements for completeness and testability, Analyze and provide feedback on system architecture Build, review, and expand infrastructure needed to simulate automative behaviors and automate tests Derive test scenarios from requirements, use cases and analysis of system design Develop and test in tandem with developers, troubleshoot and resolve bugs, and raise the standard for high quality software and functionality through iteration and automation. Participate in code reviews and provide feedback on testability and maintainability. Contribute to the continuous improvement of testing processes, methodologies, and best practices. Established and active employee resource groups

Requirements

  • Bachelor's degree in Electrical/Mechatronics Engineering, Computer Science, or a related field.
  • Minimum of 3 years of experience in software testing, preferably with embedded systems in the automotive industry.
  • Strong programming skills in Python, Rust, or other relevant languages used in embedded software development and verification.
  • Experience writing automated tests in test frameworks such as Pytest, Slash, Robot Framework, or similar.
  • Strong experience debugging embedded systems at a module and/or system level, and the ability to triage nightly regression failures.
  • Experience with software testing tools, frameworks, and methodologies (e.g., requirements-driven test development, unit testing, integration testing, system testing, automated testing).
  • Experience validating embedded software features across one or more of the following domains: network communication, IoT and connectivity, multimedia, UI, and low-voltage power distribution.
  • Proficiency in C/C++, or other relevant embedded software development languages.
  • Experience with automotive diagnostic tools and testing environments.
  • Knowledge of automotive communication protocols (e.g., CAN/CAN-FD, Ethernet (MQTT, GRPC, DDS, etc), LIN, etc.
  • Working knowledge of IDLs such as DBC, LDF, ARXML, and work with internally IDLs and frameworks.
  • Familiarity with hardware-in-the-loop (HIL) and software-in-the-loop (SIL) testing on Linux-based environments.
  • Experience testing Android and/or iOS devices.
  • Experience with automotive standards and regulations such as ISO 26262.
  • Knowledge of sensing and measurement principles, including analog and digital sensors, signal conditioning, and data acquisition techniques.
  • Experience with electrical wiring, circuit building, and troubleshooting, with the ability to read and create basic electrical schematics.
  • Familiarity with continuous integration and continuous delivery (CI/CD) practices.

Responsibilities

  • 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 tests and tools on embedded software systems in automotive environments, including application-layer firmware, infotainment/UI, and multimedia.
  • Design, build, bring-up, and scale remotely accessible test stations with production-intent hardware and peripherals, for accurately represent automotive environments.
  • Review requirements for completeness and testability, Analyze and provide feedback on system architecture
  • Build, review, and expand infrastructure needed to simulate automative behaviors and automate tests
  • Derive test scenarios from requirements, use cases and analysis of system design
  • Develop and test in tandem with developers, troubleshoot and resolve bugs, and raise the standard for high quality software and functionality through iteration and automation.
  • Participate in code reviews and provide feedback on testability and maintainability.
  • Contribute to the continuous improvement of testing processes, methodologies, and best practices.
© 2024 Teal Labs, Inc
Privacy PolicyTerms of Service