Job Summary
Knightscope is seeking a Mid/Senior Embedded Software Engineer to join our product development team and support a new hardware program. In this role, you will lead software system design, subsystem development, component integration for a wearable technology product-from early prototyping through production readiness. You will work cross-functionally with mechanical, electrical, systems and other software engineers in a fast-paced, gate-driven product development environment and play a critical role in shaping a first-of-its-kind platform.
Location Requirement: Full-time, on-site at Sunnyvale HQ
About the Role
The role is an on-site, ownership-driven position within a multidisciplinary program team, requiring a hands-on engineer who is comfortable operating in ambiguity and driving decisions across mechanical, electrical, and software boundaries. You will be expected to make thoughtful tradeoffs and carry designs from early concept
This individual will own the full software scope of a new wearable hardware product, including IMU bring-up and sensor integration, sensor fusion, electronic image stabilization (EIS) of the video stream, optimization for real-time performance on the target compute (NVIDIA Jetson / ARM SoC), working knowledge of video systems, and testing support.
Please include the Disney character that best describes you in your resume-and make sure to ask your interviewers the same.
Key Responsibilities
IMU Integration
- Interface with IMU chip (gyroscope/accelerometer) via SPI or I2C communication protocols
- Read, parse, and timestamp raw IMU sensor data in real time
- Calibrate IMU for bias, drift, noise, and temperature compensation
- Implement sensor fusion algorithms (e.g., Kalman filter, Madgwick filter) to produce accurate orientation and motion estimates
Video Stabilization
- Develop Electronic Image Stabilization (EIS) algorithms using IMU motion data
- Compute camera motion trajectories and apply correction transforms to video frames
- Minimize latency between IMU data capture and video frame correction
- Tune stabilization parameters to balance smoothness vs. responsiveness
System Integration
- Synchronize IMU data timestamps with video frame timestamps precisely
- Integrate stabilization pipeline into the embedded system or host application
- Optimize algorithms for real-time performance on target hardware (e.g., NVIDIA Jetson, ARM SoC)
- Work with camera/hardware team to understand the mechanical and optical constraints
Testing & Validation
- Design test procedures to evaluate stabilization quality under various motion conditions
- Measure and benchmark latency, jitter, and stabilization accuracy
- Debug and resolve issues related to sensor noise, frame drops, or timing misalignment
Required Qualifications
- S. or M.S. degree in Computer Science, Electrical Engineering or a related field.
- 5+ years of software engineering experience, including shipping software on hardware products.
- Hands-on experience interfacing with IMU or other MEMS sensors
- Demonstrated experience with real-time systems and low-latency data processing
- Prior work on image or video processing pipelines is strongly preferred
- Experience with robotics, drones, action cameras, or autonomous vehicles is a big plus
- Strong proficiency in C and C++
- Experience with SPI, I2C, and UART communication protocols
- Solid understanding of digital signal processing (DSP) concepts
- Familiarity with sensor fusion techniques (Kalman filter, complementary filter, etc.)
- Experience with Linux-based embedded systems or RTOS (FreeRTOS, Zephyr)
Compensation & Benefits
- Base Salary: $150,000 - $180,000
- Equity: Stock options
- Benefits: Medical, dental, vision, 401(k), paid time off
- Location Requirement: Full-time, on-site at Sunnyvale HQ