We are seeking an extraordinary Firmware Engineer to lead the vision system development for our next-generation product. You will evaluate SoC and MCU platforms, and develop camera-based AI applications for object detection (either on-device or cloud-based). Collaborating closely with hardware designers, connectivity experts, and system engineers, your work will be crucial in turning innovative concepts into functional prototypes and products.
Key Responsibilities
- Evaluate, benchmark, and select SoC/MCU platforms suitable for vision workloads and potential cloud integration.
- Prototype and deploy vision pipelines: capture raw image frames, perform preprocessing (ISP, color conversions), and manage AI inference models either locally or via cloud services.
- Collaborate with hardware teams to select optimal image sensors, lenses, and camera modules for object detection and classification tasks.
- Implement low-level drivers (I²C/SPI, GPIO, PWM) and incorporate them into device trees and board-support packages.
- Work with other team members to define and implement inter-processor communication protocols (SPI/UART/I²C) for sensor data exchange and system telemetry.
- Ensure coexistence of camera subsystems with other embedded peripherals (touchscreen, motors, sensors, connectivity modules) without performance degradation.
Required Qualifications
- Bachelor’s or Master’s degree in Computer Science, Electrical Engineering, or related discipline, or equivalent experience.
- 5+ years experience in embedded firmware engineering, including at least 3 years focused on camera or vision applications.
- Strong proficiency in C/C++ (Linux kernel drivers or RTOS firmware), with knowledge of memory management, DMA, interrupts, and real-time system constraints.
- Hands-on experience with camera interfaces: MIPI-CSI-2, USB Video Class (UVC), or parallel RGB; comfortable working with image sensor datasheets, register programming, and sensor configuration.
- Familiarity with vision frameworks (OpenCV, TensorRT, TensorFlow Lite, Edge TPU) or cloud-based AI processing platforms (AWS, Azure, Google Cloud); capable of prototyping object detection or segmentation pipelines, profiling performance, and suggesting optimizations.
- Solid understanding of I²C, SPI, UART, and GPIO interfaces.
- Proven prototyping ability—quickly translating high-level performance targets into functional prototypes and effectively evaluating hardware-software tradeoffs.
- Skilled in using logic analyzers, oscilloscopes, and debugging tools (JTAG, GDB) to troubleshoot camera issues.
- Excellent communication skills, capable of producing clear documentation, architecture diagrams, and engaging in effective cross-team collaboration.
Preferred Skills
- Experience with camera calibration techniques, including lens distortion correction and color-space conversions.
- Experience with integrating touchscreen panels (LVDS/DSI/HDMI) and touch controllers (I²C/SPI), and developing responsive user interfaces.
- Develop and optimize embedded UI frameworks (e.g., Qt Embedded, LVGL).
- Familiarity with Linux system architectures, cross-compilation, build systems, and kernel module integration.
- Experience with OTA firmware updates for MCUs (bootloaders) and SoCs (partition management).
- Previous experience in startups or rapid prototyping environments.
- Familiarity with Agile methodologies, version control (GitHub), CI/CD pipelines, and project management tools (JIRA).
The estimated base salary range for this position is $170k to $225k, which does not include the value of benefits or a potential equity grant. A wide range of factors are considered in making compensation decisions, including but not limited to skill sets, market conditions, experience and training, licensure and certifications, and business and organizational needs.