Get more replies from employers
Send a job-specific resume in minutes.
Talent With Heart is seeking a hands-on Embedded OS Engineer to own the Ubuntu-based Linux firmware stack on our MK2 drone platform (Qualcomm QRB5165). You will build, secure, and ship the OS through automated CI/CD pipelines.
This role requires working with low-level OS internals, Yocto/BitBake, system units, and headless hardware. You will maintain build systems, post-processing, and hardening to ensure reliability and performance.
Our client is looking for a hands-on Embedded OS Engineer to own the Ubuntu-based Linux firmware stack on our MK2 drone platform (Qualcomm QRB5165). You will be the person who builds the OS, keeps it secure, makes it reliable, and ships it through automated CI/CD pipelines.
This is not a role for someone who has only worked at the application layer. We need someone comfortable navigating low-level OS internals, Yocto's BitBake machinery, system unit files, and the realities of headless embedded hardware with no display and limited recovery options.
Own and maintain the teal-mk2-build repository, including layer configuration, local.conf tuning, and image recipes that produce the qti-ubuntu-robotics-image.
Write and maintain .bb recipes and .bbappend overlays; create .patch files (git diff--based) against the pinned Qualcomm QRB5165 BSP (LU.UM.3.3.1) so that upstream sources are never modified directly.
Implement ROOTFS_POSTPROCESS_COMMAND functions to perform postbuild OS customization: package upgrades, apt security patching (Ubuntu ESM), service installation, and file system fixups.
Maintain and improve Jenkins pipelines that build Yocto firmware images, including handling concurrent build isolation, artifact staging, and race conditions between parallel jobs.
Diagnose and resolve Jenkins agent performance issues: Java heap tuning, Docker overlay2 disk pressure, container lifecycle management, and build environment reproducibility.
Configure systemd-networkd for runtime network mode switching (DHCP ? linklocal) on headless devices using udev rules, button-press event handlers, and LED feedback mechanisms.
Write and maintain systemd service units and timers: understanding WantedBy, After, Requires, and ExecStart semantics for embedded boot sequences.
Implement reliable USB logging and file transfer services (usb-gadget, udevadm) for field diagnostics on devices with no screen.
Develop and maintain Prometheus node_exporter integrations and processexporter configurations for drone fleet health monitoring via Grafana dashboards.
Remediate Nessus / Blue List security findings affecting the embedded OS: SSH hardening (key-only auth, sshd_config tuning), open port reduction, and service inventory documentation.
Maintain /etc/shadow hygiene, locked account policies, and PAM configurations appropriate for production embedded devices.
Generate and maintain security compliance artifacts (port inventories, service lists, patch status reports) for internal security assessors.