San Francisco, California, United States of America
Full Time
3 hours ago
$230,000 - $265,800 USD
No Visa Sponsorship
Key skills
C++CloudLinuxPythonC
About this role
Role Overview
Own the Navigation Engine and Platform
Lead design, implementation, and optimization of the core navigation engine across a wide range of hardware platforms, devices, and customer applications.
Conceptualize and architect solutions that integrate GNSS receivers, inertial sensors, wheel odometry, cameras, and other hardware
with abstractions that scale across diverse deployments.
Break down high-level work descriptions into concrete tasks, schedules, and milestones, and hold yourself accountable for delivering against them.
Drive performance tuning and low-level optimizations across a range of platforms
from Linux-based devices (ARM and x86) to bare-metal microcontroller environments.
Ensure the software stack is well-structured, maintainable, and built to last as the product and customer base grow.
Drive Hardware Integration and Bring-Up
Own board bring-up, driver development, and hardware validation for new platforms and peripherals.
Work hands-on with hardware interfaces (UART, SPI, I2C, CAN) and debugging tools (gdb, JTAG, logic analyzers, oscilloscopes).
Identify and resolve timing-critical and hardware-software interaction issues early in the integration process.
Respond to Customer and Market Challenges
Engage directly with evolving customer needs and translate them into well-designed, durable technical solutions.
Collaborate with hardware, firmware, cloud infrastructure, and customer-facing teams to deliver reliable end-to-end systems.
Surface technical risks and tradeoffs early so architecture and delivery decisions reflect real-world constraints.
Own Testing and Verification
Design and maintain rigorous testing and verification strategies across the navigation engine and supported hardware platforms.
Treat test coverage as a first-class engineering responsibility
ensuring the team and customers have confidence in every release.
Identify gaps in coverage proactively, particularly as new platforms, sensors, or customer configurations are added.
Raise the Technical Bar
Mentor junior engineers and establish best practices across the team.
Contribute to architecture discussions, technical strategy, and roadmap planning.
Apply Python or similar tools for automation, scripting, and debugging to accelerate team productivity.
Requirements
7+ years of professional software development experience, with significant depth in embedded or platform-level systems.
Proven ability to conceptualize, design, and implement major software components
from early architecture through testing and production deployment.
Proven ability to take high-level project goals and decompose them into actionable tasks, realistic schedules, and clear milestones
with a track record of delivering on commitments.
Expert in modern C++ (C++14 or later), with deep knowledge of system-level programming, memory management, and concurrency.
Strong experience with embedded Linux, RTOSes, and bare-metal systems.
Hands-on experience with board bring-up, driver development, and timing-critical systems.
Proficiency with common hardware interfaces (UART, SPI, I2C, CAN) and debugging tools (gdb, logic analyzers, oscilloscopes).
Experience designing and owning testing and verification strategies for complex systems.
BS/MS/PhD in Computer Engineering, Electrical Engineering, Computer Science, or equivalent experience.