Staff Software Engineer, Vehicle Management System, Maritime
Anduril Industries is a defense technology company with a mission to transform U.S. and allied military capabilities with advanced technology. By bringing the expertise, technology, and business model of the 21st century's most innovative companies to the defense industry, Anduril is changing how military systems are designed, built and sold. Anduril's family of systems is powered by Lattice OS, an AI-powered operating system that turns thousands of data streams into a realtime, 3D command and control center. As the world enters an era of strategic competition, Anduril is committed to bringing cutting-edge autonomy, AI, computer vision, sensor fusion, and networking technology to the military in months, not years.
About the Job
Staff Software Engineers lead the delivery of a variety of embedded and/or safety critical software integrated in to our products, acting as technical leads, extremely senior individual contributors, and/or as team leads that are also hands-on contributors. This includes device management, drivers, firmware, power management, networking, and contingency management and recovery. We expect Staff Software Engineers to demonstrate unparalleled end-to-end outcome ownership, driving the rapid architecting, design, delivery, support, and evolution of next generation autonomous platforms through their entire product life-cycle.
What You'll Do
- Own customer success through the design and delivery of a multi-year, multi-stakeholder software roadmap that spans across multiple teams.
- Leverage internal product and program-specific engineering teams to rapidly deliver capability beyond the scope of current platforms, with a clear path for both architecture and capability evolution over time.
- Partner with external teams, collaborating on interfacing requirements between diverse systems and technologies.
- Lead teams that architect, design and implement trusted, safety critical Vehicle Management Systems that balance constraints, restrictions and requirements in a multi-stakeholder environment.
- Contribute to the design and development of a company wide roadmap for software inputs to autonomous systems.
- Architect, design and implement scalable vehicle sub-systems including sensor processing, state estimation, contingency management, actuation, payload interfaces, and mission systems interfaces.
- Drive the development of real-time embedded software using an RTOS.
- Drive the development of device drivers and interfaces to a variety of sensors and actuators.
- Act as a subject matter expert for software engineering, representing software equities in a multi-stakeholder environment including engineering, business and sales leadership.
- Drive the design and implementation of development processes for the initial delivery and subsequent iteration of software, including full lifecycle testing.
- Drive the creation of test and simulation fixtures that operate with both software- and hardware-in-the-loop.
- Support vehicle manufacturing and deployment.
- Lead teams of multi-disciplinary engineers, including as a mentor for Senior Software Engineers from differing backgrounds.
- Travel to co-locate with end-users and/or other teams up to 20% of the time.
Required Qualifications
- Bachelor's degree in Robotics, Mechatronics, Computer Science, Engineering, a relevant field, or equivalent experience.
- Experience in a leadership position within a high performing technology organization.
- Experienced and proficient at writing C.
- Experience with an RTOS.
- Familiarity with communications busses and protocols (e.g. CAN, CANFD, UART/RS232/RS422/RS485, SPI, QSPI, I2C, Ethernet, ARINC-825, ARINC-429, MIL-STD-1553, etc).
- Systems programming skills including algorithms, data structures, concurrency and optimization.
- Capacity to act as the technical owner for an entire software system, including stakeholder engagement, requirements definition, roadmap management, team co-ordination, design, implementation, sustainment and evolution.
- Capacity to learn and grow individually, while mentoring junior team members effectively, contributing to team cohesion and capacity.
- Eligible to obtain and maintain an active U.S. Secret security clearance.
Preferred Qualifications
- Experience in design and development of embedded applications in autonomous vehicle software systems.
- Experience with development of high assurance safety critical software applications.
- Experience in developing interfaces to sensors and actuators.
- Experience troubleshooting and analyzing remotely deployed software systems.
- Experience working with and testing electrical and mechanical systems.
- Experience with DO-178, IEC 61508, or similar certifications.
- Familiarity with navigation and communications systems.
- Experience within the product delivery lifecycle including manufacturing, system acceptance, deployment, and sustainment.
- Familiarity with Systems Engineering concepts.
- Desire to learn and grow in to other roles that require experience as a Staff Software Engineer, such as Principal Software Engineer and/or Senior Manager, Software Engineering.
- Desire to grow in to a Tech-Lead-Manager role, with responsibility for line management of engineers, in addition to delivery.