Robot Platform Software Engineer (Perception Systems)
Apptronik Inc.
Austin, United States of America
2 days ago
Role details
Contract type
Permanent contract Employment type
Full-time (> 32 hours) Working hours
Regular working hours Languages
English Experience level
SeniorJob location
Remote
Austin, United States of America
Tech stack
Systems Engineering
C++
Profiling
Code Review
Nvidia CUDA
Continuous Integration
Linux
Device Drivers
Performance Tuning
Software Construction
Software Engineering
Systems Integration
Gpu Programming
Information Technology
Data Pipelines
Job description
- We operate at the cutting edge of embodied AI, applying our expertise across the full robotics stack to solve some of society's most important problems
- You will join a team dedicated to bringing Apollo to market at scale, tackling the complex challenges like safety, commercialization, and mass production to change the world for the better
- Apptronik is seeking a Perception Systems Engineer to join our team in Austin, TX to own the sensor interface layer and real-time perception data pipeline, ensuring robust integration of hardware from the link up to perception consumers
- In this role, you will help define the sensor architecture on our next gen robotics platforms, develop device drivers to enable the sensors, and harden our sensor perception pipelines
- You will join a dedicated team applying expertise across the robotics stack to solve complex challenges in safety and commercialization to change the world for the better
- Sensor Integration & Driver Development: Develop, integrate, and maintain low-level drivers for cameras (GMSL, MIPI) and other sensors to ensure reliable hardware-software communication
- Calibration & Alignment: Execute and refine camera calibration techniques for both intrinsic and extrinsic parameters to ensure accurate spatial and depth perception
- Perception Pipeline Profiling: Instrument and profile the end-to-end perception pipeline, identifying and resolving bottlenecks in CPU/GPU utilization and system memory bandwidth
- Performance Optimization: Implement advanced optimization techniques, such as Direct Memory Access (DMA) and efficient memory buffering, to maximize throughput and minimize system latency
- Framework Utilization: Apply high-performance processing frameworks (e.g., Holoscan) to streamline sensor data ingestion and processing
- Hardware-Software Integration: Collaborate with cross-functional teams to validate sensor performance, evaluate hardware trade-offs, and ensure seamless system operation
- Benchmarking & Validation: Establish and execute performance benchmarks to characterize the perception stack's load on system resources under varying operational conditions
- Engineering Standards: Adhere to and promote software engineering best practices, including code reviews, clear documentation, and continuous integration
Requirements
- Solid understanding of camera calibration workflows (intrinsics/extrinsics) and geometric vision
- Deep experience with sensor protocols like GMSL/MIPI and writing robust device drivers
- Expert-level C++ in Linux for system-level, performance-sensitive, and hard-real-time code
- Experience with low-level optimizations (DMA, zero-copy) and frameworks like Holoscan or ROS2
- Hands-on CUDA/GPU programming and familiarity with NVIDIA Jetson-class embedded platforms
- Ability to optimize system bandwidth (CPU/GPU) and identify latency bottlenecks in pipelines
- Bachelor's degree in Computer Science, Robotics, Electrical Engineering, or related field; Master's preferred
- 4+ years of experience in software engineering with a focus on perception systems, sensor integration, or high-performance embedded systems
- Must be able to lift 15 pounds at times
- Vision to read printed materials and a computer screen
- Prolonged periods of sitting at a desk and working on a computer
- Hearing and speech to communicate