We're building an embedded compute module (NXP i.MX8MP) for real-time video capture, encoding, and streaming in mission-critical, field-deployed systems. You'll take full ownership of the software stack — BSP, kernel, device tree, userspace services, and the complete video and networking pipeline. It's a deep-technical role with real influence over the architecture of a core platform.
What you'll own
-
BSP & kernel
— maintain and extend the Linux BSP (U-Boot, kernel, device tree, low-level drivers); bring up and debug new hardware revisions; tune drivers/DT for CSI cameras, I²C/SPI, GPIOs, and storage; improve boot time, robustness, and recovery.
-
Yocto & distribution
— maintain layers, recipes, and configs for a custom embedded distro; integrate and patch components (GStreamer, networking, debugging tools); keep builds reproducible.
-
Video & streaming
— build and debug GStreamer pipelines (CSI v4l2 capture, H.264 HW-accelerated encoding, real-time streaming, SD recording); profile and optimize CPU/GPU/VPU, bandwidth, and latency.
-
System services & reliability
— design systemd services (recorders, watchdogs, monitoring); handle power events, removable storage, degraded I/O, and error recovery; add health monitoring, structured logging, and field diagnostics.
-
Networking & integration
— configure high-throughput, low-latency links; integrate with auxiliary modules over UART; collaborate with MCU/firmware devs on protocols and update workflows.
-
Tooling & bring-up
— build CLI tools and automation (Bash/Python) for flashing, testing, diagnostics; keep clear technical docs.
What we're looking for
-
Proven Embedded Linux experience on real hardware.
-
Strong C in low-level Linux (kernel or near-kernel userspace).
-
Solid Yocto (recipes, classes, custom layers, board-specific images).
-
Hands-on U-Boot and Linux kernel on ARM SoCs (NXP i.MX preferred).
-
Confident with device tree (bindings, nodes, peripheral enablement).
-
Practical GStreamer (capture/encode/stream).
-
Deep systemd knowledge (units, dependencies, journald, debugging).
-
Strong CLI/debugging: dmesg, journalctl, strace, gdb, perf.
-
Basic HW debugging: UART console, logic analyzer, oscilloscope; ability to read schematics and understand SW–HW interactions.
-
Good written and spoken English.
Bonus points
-
Direct NXP i.MX8MP (or similar multimedia SoC) experience.
-
Wireless links in constrained/outdoor setups.
-
OTA frameworks (SWUpdate, Mender) with A/B slots and rollback.
-
UAV / robotics exposure (MAVLink, telemetry, UDP streams).
-
OpenWrt, Armbian, or similar; Python tooling; STM32/MCU firmware from Linux; field-deployed reliability background.
What we offer
-
A deep-technical role with real ownership and architectural influence.
-
A team focused on modern, hands-on engineering.
-
Competitive pay based on skills and experience.