Embedded Software Validation Engineer

Ford MotorPalo Alto, CA
18hHybrid

About The Position

In this position... We are seeking a Senior Embedded Software Validation Engineer to join our team, specializing in embedded systems with a focus on validating automotive firmware and applications. As an Embedded Software Validation Engineer, you will be responsible for designing, developing, maintaining, and scaling automated tests for our embedded software products, to ultimately validate functional and non-functional requirements. You will also be responsible for designing and bringing up test benches to launch Ford software on production-intent hardware, on which you will author and execute automated tests. These tests will validate software features across various domains, including network communication, IoT and connectivity, multimedia, UI, and low-voltage power distribution. Your expertise in embedded systems and automotive industry knowledge will help ensure the quality and reliability of our software solutions.

Requirements

  • Bachelor's degree in Electrical/Mechatronics Engineering, Computer Science, or a related field or relevant experience
  • Minimum of 5 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.

Nice To Haves

  • 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.
  • Collaborate with cross-functional teams to: 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.

Benefits

  • Immediate medical, dental, vision and prescription drug coverage
  • Flexible family care days, paid parental leave, new parent ramp-up programs, subsidized back-up child care and more
  • Family building benefits including adoption and surrogacy expense reimbursement, fertility treatments, and more
  • Vehicle discount program for employees and family members and management leases
  • Tuition assistance
  • Established and active employee resource groups
  • Paid time off for individual and team community service
  • A generous schedule of paid holidays, including the week between Christmas and New Year’s Day
  • Paid time off and the option to purchase additional vacation time.
© 2024 Teal Labs, Inc
Privacy PolicyTerms of Service