You and the process

With a person
Anna, in-house recruiter
9 years hiring engineers
30 minutes with a real recruiter
They read your CV with you, on a call, and say where the offers are being lost.
Didn’t find what you were looking for? Tell us what to build
CACI International

Senior Embedded Software Engineer

  • Office
  • 6+ years

Salary

$113,200 - 237,800/ year

AI summary

For members

The whole posting in a few lines. Sign up to read it here and on every role you open.

Sign Up to Read

Description

The team builds specialized tools, sensors and communications devices for demanding applications using embedded RF systems.

You will join a multi-disciplinary group and take a design from first architecture through to production, balancing schedule, performance, portability and maintainability.

Your technical choices will affect system performance, real-time behavior and how high-rate RF data is handled on resource-limited hardware.

You will work across the whole embedded stack, from signal processing algorithms and FPGA logic to application code and hardware interfaces.

Responsibilities

  • Build high-performance C++ frameworks for communication between processors where latency and throughput matter most.
  • Design software architectures across x86, ARM and FPGA fabric, setting communication patterns and data flows for real-time RF signal processing.
  • Design microservice architectures for x86 and ARM, weighing modularity, performance and resource limits.
  • Set up data pipelines that move RF samples from ADCs through filters, demodulators and decoders, working alongside signal processing engineers.
  • Work with FPGA engineers on hardware/software interfaces that use programmable logic while keeping the software flexible.
  • Profile and tune software for memory-bound and compute-bound workloads with tools such as vTune, finding bottlenecks and delivering measurable gains.
  • Create debugging methods for constrained embedded systems where standard tools offer little visibility.
  • Write C++ and Python test harnesses and unit tests that produce realistic workloads, check system behavior and cover edge cases.
  • Adopt modern tooling and practices such as CI/CD, containerization and build automation.
  • Produce technical documents, including message sequence charts, UML class diagrams and architecture specifications, so distributed teams can build complex systems correctly.

Requirements

  • Required:
  • 7+ years of professional software engineering work in embedded systems and/or high-performance computing on Linux.
  • BS or MS in Computer Science, Software Engineering, Electrical or Computer Engineering, or a related field.
  • Strong C++ skills for embedded real-time systems, covering concurrency, memory management and optimization.
  • A proven record of designing software architectures and explaining technical ideas through documents and diagrams.
  • Multi-threaded development experience and the ability to debug concurrency faults such as race conditions in inter-processor and microservice designs.
  • Working knowledge of software design patterns and methodologies for complex systems.
  • Experience with build systems and DevOps tools such as Conan, Docker and GitLab, or similar.
  • Experience with profiling and debugging tools such as vTune, perf, gdb and valgrind, or similar, to find and fix bottlenecks.
  • Judgment in balancing portability, performance and architecture-specific optimization.
  • US citizenship is required.
  • Desired:
  • Experience with communications systems and digital signal processing, including filters, modulation and demodulation, channel equalization and forward error correction (FEC).
  • Experience with wireless communications protocols such as 3GPP, IEEE 802.11 and IEEE 802.15.
  • Understanding of the signal processing pipeline from RF data collection through digital processing.

Conditions

Full-time, regular position.

No security clearance is needed to start.

No travel is required.

Salary depends on factors such as geographic location, Federal Government contract labor categories and wage rates, prior experience, skills, education and certifications.

Proposed salary range: $113,200 - $237,800.

Benefits

  • Competitive compensation and learning and development opportunities.
  • Healthcare, wellness, financial, retirement, family support, continuing education and time off benefits.
  • Flexible time off that lets you take the time you need.
  • Access to robust learning resources.

Where you’d work

From the office

No visa sponsorship

About the company

CACI International

Office in United States

Also hiring in Washington, Dc, United States, Denver, United States, Austin, United States and 8 more places

83 of their 465 open roles are remote

Your chances

Worth a look before you spend an evening tailoring a CV for it.

  • 21 checks run
  • 2 red flags

Still hiring?

14 checks

1 red flag

How crowded?

7 checks

1 red flag

Fits Me

How well does this role fit you?

Answer a few questions or drop your CV, and every role gets a fit score with the reasons, this one first.

  • Your field
  • Level
  • Stack
  • Work model
  • Salary floor
  • Must-haves
Details11 facts · Role, Location, Compensation, Employment
Tech stack
  • Python
  • Docker
  • C++
  • Linux
  • CI/CD
Seniority
Senior
Type
Full-time
Region
United States
Pay period
Annual
Show 6 more factsShow less

Role

Category
Development
Seniority
Senior
Experience
7+ years
Tech stack
  • Python
  • Docker
  • C++
  • Linux
  • CI/CD

Location

Work model
Office
Region
United States
Office
  • United States
Visa sponsorship
Not sponsored

Compensation

Salary
$113,200 - 237,800 / year
Pay period
Annual

Employment

Type
Full-time

Something wrong with this vacancy?

Similar vacancies

Share this vacancy

What's wrong with it?

The employer never sees who reported.

Reason