Senior Embedded Software Engineer

CACI International Inc.

Florham Park (NJ)

On-site

USD 113,000 - 238,000

Full time

14 days+
Application generator

Get a reply from this employer — a resume and cover letter tailored to exactly what they’re hiring for.

Get past ATS filters

Job summary

CACI International Inc. seeks a Senior Embedded Software Engineer to tackle low-level firmware, reverse engineering, and security assessments in embedded telecom systems.

You will develop tools in Python, analyze hardware interfaces, and collaborate with hardware engineers to access JTAG/SWD and extract firmware while documenting findings for security and mission success.

Qualifications

  • Must be a US Citizen and able to obtain a security clearance.
  • 5+ years of embedded software development with reverse engineering skills.
  • Proficiency in C, C++, and assembly for ARM, MIPS, x86, or RISC-V.
  • Experience with RTOS environments (VxWorks, embedded Linux) and device drivers.
  • Understanding of IPC mechanisms (message queues, shared memory, semaphores).
  • Familiarity with SPI, I2C, PCIe, UART, and memory-mapped I/O.
  • Proficient in Python3 for scripting and automation.
  • Hands-on with disassembly/decompilation tools (IDA Pro, Ghidra, Binary Ninja) and debugging (GDB, JTAG).
  • Knowledge of embedded security concepts (secure boot, firmware encryption, hardware authentication).

Responsibilities

  • Reverse engineer embedded firmware, drivers, and telecom systems to identify undocumented functionality and security issues.
  • Perform firmware extraction, binary diffing, static and dynamic analysis, and hardware-assisted debugging.
  • Collaborate with hardware engineers to access debug interfaces (JTAG, SWD), extract flash images, and inspect hardware state.
  • Develop Python3 tools to automate analysis workflows (firmware unpacking, protocol decoding, memory analysis).
  • Investigate edge-case behaviors and initialization logic to reveal attack surfaces.
  • Document findings clearly and translate technical complexity into actionable reports for security and engineering teams.

Skills

Embedded C/C++
Assembly
RTOS
Reverse Engineering
Python
GDB/JTAG debugging
Disassembly tools
Security concepts
IPC mechanisms
SPI/I2C/PCIe/UART
Memory-mapped I/O
IDA Pro
Ghidra
Binary Ninja
Flash extraction

Tools

IDA Pro
Ghidra
Binary Ninja
GDB
JTAG

Job description

Job Title: Senior Embedded Software EngineerJob Category: EngineeringTime Type: Full timeMinimum Clearance Required to Start: NoneEmployee Type: RegularPercentage of Travel Required: Up to 10%Type of Travel: Continental US* * *The Opportunity:We are seeking an Senior Embedded Software Engineer with expertise in embedded systems, reverse engineering, and cybersecurity. This role is ideal for someone who thrives on technical ambiguity, enjoys uncovering how complex systems really work, and excels in low-level software and hardware analysis. You’ll play a key role in evaluating security and robustness of proprietary embedded systems—developing custom tools, uncovering vulnerabilities, and contributing directly to national cybersecurity efforts.Challenging, impactful work at the intersection of embedded systems, telecom, and cybersecurity.A technically driven environment that encourages innovation and deep technical exploration.Opportunities to publish research, present findings, or contribute to classified mission success.A team culture that values technical mastery, curiosity, and mentorship.Support for continued learning, certifications, and reverse engineering challenges.Responsibilities:Reverse engineer embedded firmware, device drivers, and proprietary telecom systems to identify undocumented functionality and potential security issues.Perform firmware extraction, binary diffing, static and dynamic analysis, and hardware-assisted debugging.Collaborate with hardware engineers to access debug interfaces (e.g., JTAG, SWD), extract flash images, and inspect hardware state.Develop custom tools and scripts (e.g., in Python3) to automate analysis workflows such as firmware unpacking, protocol decoding, and memory analysis.Investigate edge-case behaviors, error-handling routines, and low-level system initialization logic to reveal attack surfaces.Document findings clearly and translate technical complexity into actionable reports for security and engineering teams.Qualifications:Required:Must be a US Citizen and the ability to obtain a security clearance.5+ years of professional experience in embedded software development with reverse engineering skills.Proficiency in C, C++, and assembly programming for embedded architectures such as ARM, MIPS, x86, or RISC-V.Experience with RTOS environments, including VxWorks and embedded Linux device driver development.Understanding of embedded software IPC mechanisms, such as message queues, shared memory, and semaphores.Familiarity with embedded hardware interfaces, including SPI, I2C, PCIe, UART, and memory-mapped I/O.Proficient in Python3 for scripting and automation.Hands-on experience with disassembly and decompilation tools (e.g., IDA Pro, Ghidra, Binary Ninja) and debugging tools (GDB, JTAG).Knowledge of embedded security concepts, including secure boot, firmware encryption, and hardware authentication.Desired:An active security clearance is highly desired.Experience in cybersecurity research, vulnerability discovery, or exploit development in embedded or telecom environments.Familiarity with PowerPC assembly, including QUICC-based systems.Experience with ARM assembly and debugging of SoC-based embedded platforms.Understanding of Linux kernel internals and/or VxWorks internals.Hands-on experience with FPGA-based systems, including those with embedded ARM or PowerPC cores.Background in embedded hardware design and debug, including the use of oscilloscopes, logic analyzers, and firmware extraction techniques.Ability to build tools and infrastructure to support analysis workflows in a team setting.-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,800CACI 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.
Get your free, confidential resume review.

or drag and drop your file here.

Similar jobs

Similar jobs worth comparing

Senior Embedded Software Engineer
Senior Embedded Software Engineer

CACI International Inc • Florham Park (NJ)

On-site
USD 113,000 - 238,000
Software Engineer
Software Engineer

CACI International Inc. • Lisle (IL)

On-site
USD 64,000 - 128,000
Cyber Reverse Engineer, Senior US VA Sterling
Cyber Reverse Engineer, Senior US VA Sterling

CACI International Inc. • Sterling (VA)

On-site
USD 113,200 - 237,800
Staff Embedded Software Engineer Colorado Springs, CO, US
Staff Embedded Software Engineer Colorado Springs, CO, US

CACI International Inc. • Colorado Springs (CO), Northern (KY)

On-site
USD 99,000 - 207,000
Senior Software Engineer - Architecture & Systems Design Herndon, VA, US
Senior Software Engineer - Architecture & Systems Design Herndon, VA, US

CACI International Inc. • Herndon (VA)

On-site
USD 94,000 - 198,000
Cyber Reverse Engineer
Cyber Reverse Engineer

CACI International Inc. • Maryland

On-site
USD 90,000 - 190,000
Senior Software Engineer - Architecture & Systems Design
Senior Software Engineer - Architecture & Systems Design

CACI International Inc • Herndon (VA)

On-site
USD 94,000 - 198,000
Senior Software Engineer
Senior Software Engineer

CACI International Inc. • Cary (NC)

On-site
USD 99,000 - 207,000
Senior Electrical Engineer
Senior Electrical Engineer

CACI International Inc. • Maryland

On-site
USD 99,000 - 209,000
Software Engineer
Software Engineer

CACI International Inc. • Cary (NC)

On-site
USD 69,000 - 142,000