Lead the design and implementation of safety-critical embedded software for autonomous systems, ensuring adherence to industry standards and regulations.
Develop and maintain software architectures for complex robotic systems, including sensor fusion, perception, and control algorithms.
Debug and troubleshoot hardware-software interactions, identifying and resolving issues in real-time embedded environments.
Collaborate with cross-functional teams, including hardware engineers, robotics scientists, and product managers, to define system requirements and specifications.
Optimize software performance and resource utilization on resource-constrained embedded platforms.
Conduct code reviews and contribute to the development of best practices for software development in autonomous systems.
Implement and test software components, ensuring robustness, reliability, and accuracy in autonomous vehicle operations.
Stay current with emerging technologies and trends in autonomous systems and embedded software development.
Contribute to the development of software tools and infrastructure to support the software development lifecycle.
Participate in the integration and testing of autonomous systems, including simulation, hardware-in-the-loop, and field testing.