Back to jobs

Senior Software Architect

Onsite / United StatesFull timeSenior (5+ years)$113,200 – $237,800 / year
Apply

About the role

Job Title: Senior Software ArchitectJob Category: EngineeringTime Type: Full timeMinimum Clearance Required to Start: NoneEmployee Type: RegularPercentage of Travel Required: NoneType of Travel: None* * *

The Opportunity:

  • Design, architect, and implement complex embedded RF systems as part of a multi-disciplinary team working on specialized tools, sensors, and communications devices for demanding applications
  • Contribute to software architecture decisions for inter-processor and microservice systems where your technical choices directly impact system performance, real-time behavior, and the ability to process high-rate RF data in resource-constrained environments
  • Work with engineers across the full embedded system stack—from signal processing algorithms to FPGA fabric, from application layer to hardware interfaces
  • Own technical design from initial architecture through production deployment, making practical trade-offs between competing constraints like schedule, performance, portability, and maintainability

Responsibilities:

  • Design distributed software architectures spanning multiple processing domains (x86, ARM, FPGA fabric), defining communication patterns and data flows for real-time RF signal processing systems
  • Develop high-performance C++ frameworks for inter-processor communication in systems where latency and throughput are critical constraints
  • Create technical documentation including message sequence charts, UML class diagrams, and software architecture specifications that enable distributed teams to build complex systems correctly and efficiently
  • Design microservice architectures for x86 and ARM platforms, balancing modularity, performance, and resource constraints
  • Profile and optimize software for memory-bound and compute-bound workloads using tools like vTune, identifying bottlenecks and implementing measurable performance improvements
  • Work with signal processing engineers to design data pipelines that move RF samples from ADCs through filters, demodulators, and decoders
  • Develop debugging approaches for resource-constrained embedded systems where standard tools provide limited visibility
  • Build C++/Python test harnesses and unit tests that generate representative workloads, validate system behavior, and verify edge cases
  • Integrate modern development tools and practices including CI/CD pipelines, containerization, and build automation
  • Collaborate with FPGA engineers to define hardware/software interfaces that leverage programmable logic capabilities while maintaining software flexibility

Qualifications:

Required:

  • 7+ years of professional software engineering experience in embedded systems and/or high-performance computing in Linux based environments
  • BS or MS in Computer Science, Software Engineering, Electrical or Computer Engineering, or related field
  • Strong proficiency in C++ development for embedded real-time systems, including concurrency, memory management, and optimization techniques
  • Demonstrated experience designing and implementing software architectures and communicating technical concepts through documentation and diagrams
  • Experience with multi-threaded application development and debugging concurrency issues, including race conditions in inter-processor and microservice architectures
  • Working knowledge of software design patterns and development methodologies for complex systems
  • Experience with modern build systems and DevOps tools (Conan, Docker, GitLab or similar)
  • Experience with performance analysis and debugging tools (vTune, perf, gdb, valgrind, or similar) to identify and optimize bottlenecks
  • Ability to make informed trade-offs between portability, performance, and architecture-specific optimizations
  • Must be a US Citizen

Desired:

  • Experience with communications systems and digital signal processing, including filters, modulation/demodulation schemes, channel equalization, and forward error correction (FEC)

  • Experience with wireless communications protocols (3GPP, IEEE 802.11, IEEE 802.15)

  • Understanding of the signal processing pipeline from RF data collection through digital processing

What You Can Expect:

A culture of integrity.

At CACI, we place character and innovation at the center of everything we do. As a valued team member, you’ll be part of a high-performing group dedicated to our customer’s missions and driven by a higher purpose – to ensure the safety of our nation.

An environment of trust.

CACI values the unique contributions that every employee brings to our company and our customers - every day. You’ll have the autonomy to take the time you need through a unique flexible time off benefit and have access to robust learning resources to make your ambitions a reality.

A focus on continuous growth.

Together, we will advance our nation's most critical missions, build on our lengthy track record of business success, and find opportunities to break new ground — in your career and in our legacy.

Pay Range:

There are a host of factors that can influence final salary including, but not limited to, geographic location, Federal Government contract labor categories and contract wage rates, relevant prior work experience, specific skills and competencies, education, and certifications. Our employees value the flexibility at CACI that allows them to balance quality work and their personal lives. We offer competitive compensation, benefits and learning and development opportunities. Our broad and competitive mix of benefits options is designed to support and protect employees and their families. At CACI, you will receive comprehensive benefits such as; healthcare, wellness, financial, retirement, family support, continuing education, and time off benefits.

The proposed salary range for this position is:

$113,200 - $237,800

CACI is an Equal Opportunity Employer. All qualified applicants will receive consideration for employment without regard to race, color, religion, sex, pregnancy, sexual orientation, age, national origin, disability, status as a protected veteran, or any other protected characteristic.

Search the jobs. Check the details. Make your move.

Compare recent openings by location, work format, pay, and experience level in one place.

Explore jobs
Smiling man pointing at a “Job offer!” notification on his phone

Excellent

Rated 4.8 out of 5 based on 617 reviewsTrustpilot

by Megan F.

Job seeker

The filters made it easier to see roles that actually matched the way I want to work. I could compare options without opening dozens of tabs.

by Daniel B.

Developer

I liked being able to narrow the search to remote roles and check the requirements before taking the next step.

by Rachel A.

People operations

The listings are easy to scan. Work format, location, and experience level are right where I expect them.

by Marcus H.

Data analyst

Salary and location filters helped me focus on roles that were worth a closer look.

by Aisha K.

QA engineer

I found the job details clear and useful. It was simple to see which skills mattered for each role.

by Olivia G.

Support specialist

The search felt straightforward, and I could quickly switch between different kinds of jobs.

by Kevin T.

Account manager

It is easy to revisit roles that fit my experience. I would like to see even more openings in my area.

by Sophia R.

Product designer

I could check work format and salary before reading the full description. That made my search feel much clearer.

by Hannah S.

Project coordinator

The job pages put the important details together, so I knew what to expect before deciding to continue.

by Victor A.

DevOps engineer

The remote filter is useful and the listings are quick to scan. A few more country options would make it even better.

by Brandon L.

Job seeker

After a break from work, a simple search and clear filters helped me start looking again without feeling overwhelmed.

by Jessica M.

Marketing coordinator

The search is straightforward. I can move from a short result to the full role description in one click.

by Christopher H.

Operations manager

I like seeing salary, location, and experience level next to each role. It saves time when comparing openings.

by Ethan M.

Sales representative

The layout is clean and the job cards are easy to read. I am looking forward to a larger selection of listings.

by David R.

Support specialist

I found the different work formats easy to browse and could quickly open roles that matched my schedule.

Frequently asked questions

Answers about finding your next role

What can I search for?

Search by job title or keyword, then browse remote, hybrid, and onsite openings in one list.

Where can I find remote jobs?

Browse remote openings on Remote Amigo. Search by job title or keyword, then choose Remote in the work format filter. Check each listing for location or country requirements.

How do I narrow the results?

Choose a country, work format, minimum annual salary, and experience level. You can change or clear the filters at any time.

What will I see on a job page?

Each listing shows the role, company, location, work format, salary when available, skills when provided, and a job description.

Do I need an account to browse jobs?

No. You can search and read the available listings without signing in.

Does this site submit job applications for me?

No. You can search and review listings here. The Apply button starts the job preference quiz; it does not submit an application to an employer.

Where do the jobs come from?

Listings are imported from public job feeds and job sites. Job details may change at the original source, so confirm the latest information before applying.

How recent are the listings?

Search results include listings with a publication date in the last 30 days. If a source provides no publication date, the import date is used; the actual posting may be older.

Can I search for remote jobs only?

Yes. Select Remote in the job type filter to show remote listings. You can switch to Hybrid or Onsite whenever you want.

What is the difference between remote, hybrid, and onsite?

Remote roles are intended to be done away from an office. Hybrid roles combine remote and office work. Onsite roles are based at a workplace. Always read the listing for its exact location requirements.

Can I filter jobs by country?

Yes. Choose a country in the search form to narrow the listings. A remote role may still have country restrictions, so check its description before applying.

Why do some jobs have no salary listed?

Some listings do not include pay information. We show a salary when it is available and leave it out when it is not provided.

Is the salary filter a monthly or annual amount?

The minimum salary field uses US dollars per year. It filters listings that have comparable salary information.

Can I change or clear my search filters?

Yes. Change the keyword, country, job type, salary, or level in the search form. You can clear individual fields and run a broader search again.