Job Overview
As an Embedded Systems Programmer, you will develop the
Configuration and Image Management System
(
CIMS
) to support the company's proprietary product. This is a distribution system deployed across the globe. You’ll adapt existing Update Modules, create new ones for software and firmware modules and FPGA updates, generate CIMS Artifacts, develop the CIMS Client (C++), deploy a production-grade on-premises CIMS Server, and integrate with our CI/CD build systems. This role is ideal for an early-career programmer with a strong foundation in Linux and C++, eager to tackle challenges in embedded systems, IoT and Cloud technologies.
Qualification
-
sB.Sc. in Computer Science or Electrical Engineering
o
r relevant Army technical experience.
-
3+ years of experience in C/C+
+ development for embedded or real-time systems, including at least
1 year of hands-on C+
+ development.
-
Experience developing software for embedded
Linux (ARM
) in user space.
-
Some hands-on experience writing or modifying
Linux kernel modules (drivers, subsystems).
-
Experience with
Cellular LTE/5G and radio system
s — a major advantage.
-
Knowledge of Xilinx FPGA boards and PCIe communication — nice to have.
-
Experience with Yocto-based embedded Linux repository creation — nice to have.
-
Experience working with ADC/DAC and direct communication with FPGA hardware.
-
Knowledge of UHD (USRP Hardware Driver) or similar SDR abstraction layers.
-
Understanding of DMA operations, memory bandwidth, and I/O subsystem performance.
-
Strong debugging skills using tools such as logic analyzers and oscilloscopes.