Embedded Systems Software Engineer - Linux, Containers & Tactica

Scientific Research Corporation
North Charleston, SC, United States
2 days ago
Apply on www.clearancejobs.com
Prepare application

Role details

Contract type
Permanent contract
Employment type
Full-time (> 32 hours)
Experience level
Experienced
Experience required
3 years minimum
Working hours
Regular working hours

Tech stack

Application Programming Interfaces (APIs) Automation of Tests Bash Shell UClibc (C Standard Library) C++ (Programming Language) CAN Bus Ubuntu (Operating System) CentOS Command-Line Interface CMake Profiling Computer Engineering
+30 more
System Configuration Common Object Request Broker Architecture Software Debugging Linux Linux on Embedded Systems Middleware Embedded Software Global Positioning Systems (GPS) Python (Programming Language) Log Analysis Package Management Systems Posix Red Hat Enterprise Linux Memory Leaks Serial Communications Transmission Control Protocol (TCP) Scripting Delivery Pipeline Containerization Yocto Integration Tests Kubernetes Information Technology Software Defined Radio Oracle Cloud Infrastructure Grpc Docker Hardware Debugging Golang Microservices

Job description

We are seeking a versatile, proactive Embedded Systems Software Engineer to join the next-generation USMC software-defined radio (SDR) Operating Environment (OE) team. This is a “swiss army knife” role designed for an engineer who loves working across the full embedded software stack-from low-level Linux system configuration and driver interfaces up to container orchestration and waveform service integration.

On this project, you will collaborate with lead architects and SDR specialists to implement and validate a containerized, SCA-compliant Operating Environment (OE) on SOSA-aligned hardware. Your day-to-day work will span writing C++ device integration services (timing, serial devices, audio/vocoder interfaces, etc), building custom container images, crafting Python and Bash automation pipelines, and debugging hardware-software interactions on ARM64 systems-on-chip (SoC). If you enjoy diving into unfamiliar codebases, bridging software layers, and solving multifaceted engineering puzzles, this role is built for you.

Typical responsibilities include:

  • Developing, enhancing, and debugging modular embedded C/C++ applications and background daemon services providing core OS features (Vocoder, PNT/Timing, Serial I/O, Device Proxies)
  • Building, packaging, testing, and optimizing container images (Docker, Podman) designed to run tactical radio components and waveforms deterministically on embedded hardware
  • Creating Python and Bash scripts to automate container orchestration, system configuration, build pipelines, integration tests, and hardware verification suites
  • Deploying and validating software running on embedded Linux platforms (primarily ARM64 and x86_64), assisting with driver-level debugging, peripheral bring-up, and bus communications
  • Diving into diverse codebases (ranging from modern container runtimes to legacy C/C++ libraries and middleware) to diagnose performance bottlenecks, memory leaks, and interface mismatches
  • Supporting laboratory hardware-in-the-loop (HIL) testing, test tool development, and participate in customer milestones and waveform demonstrations

Requirements

  • Bachelor’s degree in computer science, computer engineering, electrical engineering, or equivalent practical experience, with 3-5 years of embedded software engineering experience
  • Proficient in C and C++ (standard library, POSIX APIs) with the demonstrated agility to navigate, read, and contribute to polyglot codebases.
  • Solid hands-on experience using Python and Bash for system scripting, test automation, and workflow tooling
  • Strong working knowledge of Linux operating environments (RHEL, Rocky, Ubuntu, or CentOS), including command-line navigation, systemd, package management, kernel log analysis (dmesg), and build utilities (CMake, Make, GCC/Clang)
  • Working knowledge of container technologies (e.g., Docker, Podman, OCI standards) with experience writing multi-stage Containerfiles/Dockerfiles and debugging container networking and volume mounts
  • Experienced in embedded system debugging using tools such as GDB, strace, valgrind, and system profilers
  • Highly resourceful problem solver who excels at picking up new frameworks, reading undocumented code, and collaborating within an agile team environment
  • Active DoD Secret clearance

Desired Skills

  • Hands-on exposure to Software Defined Radio platforms or frameworks such as REDHAWK SDR, GNU Radio, or SCA (Software Communications Architecture)
  • Familiarity with distributed middleware (e.g., CORBA, omniORB, DDS, gRPC) or serialized protocols (RS-232/422, CAN bus, MIL-STD-1553, TCP/UDP sockets)
  • Experience configuring custom embedded Linux images using Yocto Project, Buildroot, or PetaLinux
  • Exposure to modular defense open standards such as SOSA, CMOSS, MORA, or OpenVPX
  • Familiarity with Go (Golang), especially in the context of container tooling and microservices
  • Exposure to digital signal concepts, vocoders/audio codecs, or precision timing protocols (IEEE 1588 PTP, GPS/PPS sync)

Benefits & conditions

SRC offers a generous benefit package, including medical, dental, and vision plans, 401(k) with a company match, life insurance, vacation and sick paid time off accruals with amounts increasing based on role and years of service, 11 paid holidays, tuition reimbursement, and a work environment that encourages excellence and more. For positions requiring a security clearance, selected applicants will be subject to a government security investigation and must meet eligibility requirements for access to classified information.

About the company

Scientific Research Corporation is an advanced information technology and engineering company that provides innovative products and services to government and private industry, as well as independent institutions. At the core of our capabilities is a seasoned team of highly skilled engineers and scientists with multidisciplinary backgrounds. This team is challenged daily to provide cutting edge technology solutions to our clients.

Apply for this position

This job is hosted externally. Click below to view the full posting and apply.

Apply on www.clearancejobs.com
Prepare application

Good distractions

Talks and stories from around this role — technically off-topic, practically not.

1:19 min

Advancing autonomous driving capabilities with specialized software talent

Katrin Lehmann Katrin Lehmann +1 · Coffee With Developers

2:10 min

Extending capabilities with the WebAssembly System Interface

Niels Tanis Niels Tanis · World Congress 2023

52 sec

Running persistent Linux environments directly on Windows

Ben Breard Ben Breard · World Congress 2025

4:56 min

Establishing internal service communication with gRPC

Florian Bader Florian Bader · World Congress 2026 Europe

2:24 min

Navigating limitations when scaling distributed on-demand deployments

Edoardo Dusi · LIVE

3:55 min

Demonstrating .NET installation on Debian and Azure Linux

Silvano Coriani Silvano Coriani · Europe 2026 Virtual

Videos

See all

Related articles

See all