More jobs:
Embedded Os Engineer
Job in
Salt Lake City, Salt Lake County, Utah, 84190, USA
Listed on 2026-10-09
Listing for:
Joseph Michaels International
Full Time
position Listed on 2026-10-09
Job specializations:
-
Software Development
Unix/Linux
Job Description & How to Apply Below
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 QRB
5165). You will be theperson who builds the OS, keeps it secure, makes it reliable, and ships it throughautomated 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 Bit Bake machinery,system unit files, and the realities of headless embedded hardware with no display and limited recovery options.
Yocto / Bit Bake Build System 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 (gitdiff–based) against the pinned Qualcomm QRB
5165 BSP (LU.UM.3.3.1) so that upstream sources are never modified directly.
• Debug Bit Bake task failures—understanding the pipeline, sstate-cache behavior, and when to use
-ccleansstate vs.
-c rootfs
-f.
• Optimize build performance: reduce full-build times by understanding QEMUemulation overhead vs. native ARM
64 compilation, _THREADS and , and leveraging shared sstatecacheacross Jenkins agents.
• Manage package inclusion, exclusion (:remove,, ), and inter-recipe dependency graphs.
Rootfs Post-Processing & OS Hardening Implement _COMMAND functions to perform postbuildOS customization: package upgrades, apt security patching (Ubuntu ESM),service installation, and file system fixups.
• Remove unnecessary services from production images—including HTTP servers(lighttpd), TFTP daemons, and other attack-surface-expanding services identified in Blue List / Nessus security assessments.
• Write bash scripts and systemd service units that execute reliably in a headless,rootfs post-install context (no interactive terminal, limited /proc and /devavailability).
• Manage the dpkg / apt ecosystem within the embedded rootfs: pinning packages,handling held packages, validating package state, and ensuring apt lock files areclean across incremental builds
Jenkins CI/CD Pipelines 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.
• Implement proper artifact copy patterns (stageDir isolation) to prevent race conditions when multiple builds run concurrently against shared directories.
• Manage Git Lab repository structure and branch protection for the build repo;implement .patch-based change workflows that preserve the integrity of pinned upstream BSP branches
Embedded Linux System Configuration
• Configure systemd-networkd for runtime network mode switching (DHCP linklocal) on headless devices using udev rules, button-press event handlers, andLED feedback mechanisms.
• Write and maintain systemd service units and timers: understanding Wanted By,After, Requires, and Exec Start 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 integrations and processexporterconfigurations for drone fleet health monitoring via Grafana dashboards.
Security & Compliance
• Remediate Nessus / Blue List security findings affecting the embedded OS: SSH hardening (key-only auth, tuning), open port reduction, and service inventory documentation.
• Maintain /etc/shadow hygiene, locked account policies, and PAM configurations appropriate for production embedded…
To View & Apply for jobs on this site that accept applications from your location or country, tap the button below to make a Search.
(If this job is in fact in your jurisdiction, then you may be using a Proxy or VPN to access this site, and to progress further, you should change your connectivity to another mobile device or PC).
(If this job is in fact in your jurisdiction, then you may be using a Proxy or VPN to access this site, and to progress further, you should change your connectivity to another mobile device or PC).
Search for further Jobs Here:
×