Education:
Bachelor's degree in Computer Science, Software Engineering, or Computer Engineering
Qualifications:
7+ years of embedded C/C++ development experience
Proficiency in Python
Proven experience working through requirements definition, including clear documentation.
Proven experience designing and maintaining large-scale, production software systems
Deep understanding of Linux-based development, multithreading, memory management, and performance optimization
Strong code review, design documentation, and technical communication skills
Job Duties:
We are seeking a Senior Software Engineer to play a technical leadership role on an autonomy software team developing the core application development framework used in critical on-board applications for autonomous systems.
This position focuses on architecting, implementing, and scaling production-quality autonomy software while mentoring engineers and driving technical direction across projects
Lead the design, development, and ownership of the application framework and middleware across autonomy applications
Define and influence software architecture for scalable, reliable, and maintainable autonomy systems
Serve as a technical leader within the team, setting coding standards, best practices, and design patterns
Mentor and guide junior and mid-level engineers through design reviews, code reviews, and technical coaching
Ensure software quality through automated testing, CI/CD pipelines, performance optimization, and documentation
Support requirements generation and architecture decisions and tradeoffs/
Support functional safety software design and validation process/
Lead debugging and root-cause analysis for complex issues observed in simulation, HIL, or field deployments
Collaborate with cross-functional teams to integrate hardware and software solutions
Operate test benches and manage tasks using Azure DevOps