This position will touch a variety of embedded computing technologies, hardware, interfaces, and development/debugging tools, such as device drivers, flash memory, bootloaders, board support packages, printed circuit boards (PCBs), microcontrollers, JTAG interfaces, real-time operating systems (RTOS), single-board computers, systems-on-chip (SoCs), and varying levels of communications protocols. Candidate must demonstrate substantial knowledge of design considerations for performance-constrained and real-time embedded systems, including several of the following: RTOS-based designs, safety-critical software, hardware/software integration, deterministic memory management, concurrency and multithreading, headless operation, real-time scheduling, hard and soft real-time constraints, and embedded communication protocols (e.g., MIL-STD-1553, ARINC 429, CAN, or similar).