In this position...
We are seeking an 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.
We are the movers of the world and the makers of the future. We get up every day, roll up our sleeves and build a better world -- together. At Ford, we're all a part of something bigger than ourselves. Are you ready to change the way the world moves? Ford's Electric Vehicles, Digital and Design (EVDD) team is charged with delivering the company's vision of a fully electric transportation future. EVDD is customer-obsessed, entrepreneurial, and data-driven and is dedicated to delivering industry-leading customer experience for electric vehicle buyers and owners. You'll join an agile team of doers pioneering our EV future by working collaboratively, staying focused on only what matters, and delivering excellence day in and day out. Join us to make positive change by helping build a better world where every person is free to move and pursue their dreams.
What you'll do...
* 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.
What you'll do...
* 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.