We are seeking a
Senior Embedded Software Engineer
to take a technical leadership role on an autonomy software team. You will architect, implement, and scale production-quality software frameworks that power critical on-board applications for autonomous systems. This is a hands-on role with influence across design, development, and integration, while mentoring engineers and driving technical direction.
Key Responsibilities:
-
Lead design, development, and ownership of embedded application frameworks and middleware.
-
Define and influence scalable, reliable, and maintainable software architecture.
-
Mentor junior and mid-level engineers through design/code reviews and technical coaching.
-
Ensure software quality via automated testing, CI/CD pipelines, and performance optimization.
-
Collaborate with cross-functional teams to integrate hardware and software solutions.
-
Support functional safety design, validation, and requirements documentation.
-
Conduct debugging and root-cause analysis in simulation, HIL, and field deployments.
-
Operate test benches and manage tasks using Azure DevOps in an agile environment.
Education:
Bachelor’s degree in Computer Science, Software Engineering, Computer Engineering, or related field.
Experience:
7+ years professional experience with strong focus on embedded C/C++ development.
Technical Skills:
-
Strong expertise in C++ (required); proficiency in Python.
-
Deep understanding of Linux-based development, multithreading, memory management, and performance optimization.
-
Experience with device drivers, hardware diagnostics, non-volatile memory interfacing, and communication networks (J1939/CAN/Ethernet).
-
Familiarity with Git/GitHub, Azure DevOps, and robotics principles.
Soft Skills:
Strong technical communication, documentation, and collaboration across distributed teams.