Apply Now    

Embedded HW/Firmware Engineer

Req #: 243310
Location: Sterling, VA US
Job Category: Engineering
Minimum Clearance Required: TS/SCI

Job Description

Do you enjoy solving tough problems? Does supporting critical national security missions have special meaning to you? Are you the type that thrives working in a team environment? If so, this is a terrific opportunity to conceptualize and drive development of game-changing solutions that are re-shaping the battlespace environment and saving lives.

Apply your knowledge towards reverse engineering. Contribute to solving national security cyber challenges by supporting hardware and software reverse engineering projects. Responsibilities include investigating embedded software/hardware devices and their inherent communication implementations, analysis of embedded binaries and firmware to identify functional behavior. Successful candidates are self-motivated and work effectively in both team or individual situations. They have excellent communication skills and can handle multiple projects and activities simultaneously. Ability to excel in a fast-paced and highly technical R&D environment.

What you will Get to Do:

  • Investigate embedded software/hardware devices and their inherent communication implementations
  • Analyze embedded binaries and firmware to identify functional behavior
  • Perform dynamic analysis of software and firmware using tools like JTAG, SWD, openocd, and gdb.
  • Identify and isolate common operating system code from application code
  • Implement custom designs in C/C++ and assembly (x86, ARM, Thumb)
  • Develop testing procedures and document results for customer presentation.
  • Conduct and/or participate in technical reviews of requirements, specifications, designs, codes, and other artifacts

Required Qualifications:

  • An active TS/SCI clearance is required to begin employment
  • BS degree in Computer Science, Software Engineering, Computer Engineering, or Electrical Engineering (ABET/EAC Accredited). 
  • A minimum of 4+ years of experience doing embedded software development or reverse engineering

Required Skills and Experience:

  • Experience programming in Python, C, and/or C++ for Linux/RTOS
  • Experience working with board support packages (BSP), U-Boot, and device drivers
  • Experience with embedded interfaces such as UART, SPI, I2C, GPIO
  • Experience using in-circuit debuggers and programmers, JTAG/Serial-wire (SWD)
  • Thorough understanding of memory management concepts (Heap, Stack, Volatile/Nonvolatile).
  • Working knowledge of RF communications technologies, network communications technologies, and hardware design

Desired Skills and Experience:

  • Thorough understanding of ARM Cortex-M firmware development
  • Experience with IDA Pro and/or Ghidra
  • Experience programming directly in ARM/Thumb assembly
  • Experience developing applications within an RTOS framework (FreeRTOS, ThreadX, CMSIS)


What We Can Offer You:

- We’ve been named a Best Place to Work by the Washington Post.

- Our employees value the flexibility at CACI that allows them to balance quality work and their personal lives.

- We offer competitive benefits and learning and development opportunities.

- We are mission-oriented and ever vigilant in aligning our solutions with the nation’s highest priorities.

- For over 55 years, the principles of CACI’s unique, character-based culture have been the driving force behind our success.


Job Location



CACI employs a diverse range of talent to create an environment that fuels innovation and fosters continuous improvement and success. At CACI, you will have the opportunity to make an immediate impact by providing information solutions and services in support of national security missions and government transformation for Intelligence, Defense, and Federal Civilian customers. CACI is proud to provide dynamic careers for employees worldwide. CACI is an Equal Opportunity Employer - Females/Minorities/Protected Veterans/Individuals with Disabilities.

Apply Now