Embedded Software Engineer
Description
Embedded Software Engineer
Overview
At Liquid Robotics, we make the most experienced ocean surface robot on the planet. Our Wave Glider platform services a wide range of missions, whether it’s acting in partnership with environmental institutes to monitor oil spills or supporting a nation’s sovereignty by listening for submarines deep within the ocean, these rugged uncrewed surface vessels have been deployed in high sea states in the North Sea, hurricanes, or tropical storms, for more than 10 years.
Liquid Robotics is seeking an Embedded Software Engineer. This person will be responsible for embedded development activities on various internal and customer projects at Liquid Robotics. Key activities will include analyzing and creating embedded system requirements, researching and prototyping solutions, hands-on code development and developing embedded code, creation and execution of test procedures for embedded code in a cross functional, highly engaged environment. The Embedded Software Engineer will report to the Hardware Engineering Manager. This role will be located in our Herndon, VA headquarters.
Responsibilities
Job duties will include:
- Analysis and creation of requirements for embedded systems
- Creation and execution of test procedures to validate design meets requirements
- Research and rapid-prototype embedded systems concepts
- Design, implement, and test embedded software to interface with and process data from hardware peripherals
- Review and accept embedded software and firmware delivered by subcontractors and providers
- Document design and implementation, support peer reviews and gate reviews.
- Own the interface between hardware and software
- Assist hardware team in selection and assessment of new hardware
- Assist software team in definition of software interfaces, design the integration of sensors/embedded systems into the greater system
Minimum Qualifications:
- BS in Electrical Engineering, Computer Science or a related field.
- Five or more years of direct experience in embedded systems, software development, or hardware design.
- Strong experience in embedded software, with C/C++ development experience preferred.
- Able to establish and configure hardware test environment for prototyping and development.
- Able to work with common lab equipment, for example logic analyzers, oscilloscopes, and power supplies.
- Working knowledge of typical hardware interfaces such as I2C, CANbus, UART, TCP/IP.
Preferred Skills:
- Familiarity with STM32 products and development environments
- Experience with Lattice Semiconductor devices and Diamond IDE
- Experience with optimization of software/firmware for power consumption
- Experience with FreeRTOS or other similar embedded operating systems
- Experience with unit testing frameworks such as CMock/Google Test
- Experience with code coverage/static analysis tools
- An exceptional candidate would have development experience using Open Autonomous Underwater Vehicle (OpenAUV) software architecture, including payload controller extensible (PCX) modular open architecture.
Liquid Robotics designs and manufactures Wave Gliders®, the world’s first wave and solar powered autonomous ocean robots. With partners, they address challenges facing defense, Oil & Gas, commercial and science customers by making ocean data collections and communications easier safer and in real-time. Liquid Robotics was acquired by Boeing in December of 2016 and operates as an independent non-integrated subsidiary.
For more info, please visit www.liquid-robotics.com
For more info, please visit www.liquid-robotics.com
Liquid Robotics is an Equal Opportunity Employer (EOE). Qualified applicants are considered for employment without regard to race, color, religion, gender, gender identity or expression, sexual orientation, national origin, genetics, disability, age, or veteran status.