Platform Software Engineer

CACI InternationalDenver, CO
1d

About The Position

Define, design, implement, and test components of wireless protocol stacks, ranging from physical layer algorithms to layer 2/layer 3 procedures Contribute to systems-level engineering discussions that reconcile the various use cases for our software in pursuit of best-in-class solutions Work with customers (both internal and external to CACI) to help integrate our solutions into a wide variety of applications and use cases• Debug, test, and validate our capabilities using both unit tests as well as scenarios reported by our end users Travel to other CACI locations and/or customer sites in the US as necessary (travel requirement is typically 0 - 15%) What You Can Bring to Our Team: A drive to continuously improve and refine existing capabilities alongside new development opportunities. Ability to work with a distributed team and manage your time effectively across multiple, simultaneous projects. A strong understanding of modern C++ programming. We consider C++11 to be the minimum but love to use C++17/20 features where appropriate. Knowledge of wireless physical layer algorithms and their implementations, or an ability to learn and understand existing implementations. Code profiling experience, ability to identify critical code paths, and offer performance optimizations based on analysis over multiple scenarios. Experience using wireless test equipment in lab environments, including test setup design.

Requirements

  • A bachelor’s degree (or higher) in Computer Science or Electrical Engineering or equivalent technical degree or an additional 4+ years of experience in lieu of degree.
  • 5+ years of related experience
  • Experience writing software for Linux-based operating systems
  • C/C++ programming experience, shown through project work or code examples
  • Demonstrated ability to read and understand technical specifications, and create software-based implementations of the procedures and methods described therein
  • Experience working in both SW and HW domains
  • Ability to read and understand schematics
  • Experience with low level debugging techniques (SW, probes, oscilloscopes)
  • Embedded SW development experience on custom designed hardware (Bootloaders, Device Drivers for: Ethernet, PCIe, I2C, SPI, GPS, MDIO, Sensors))
  • Embedded Linux OS development experience on custom designed hardware (Yocto, Kernel, Device Driver, File system, Containerization)
  • Software development experience for products based on 64-bit ARM and 64-bit x86 processors
  • Basic knowledge of RF concepts and Amplifiers
  • Networking knowledge (Ethernet 1G/10G/100/G, layer 2 switching, layer 3)
  • Experience with Git change control, GNU Make, Bash scripting, Python
  • Excellent communication and interpersonal skills
  • The ability to obtain and maintain and US Government Clearance at the TS/SCI level.
  • Previous experience with wireless protocols (e.g., 3GPP cellular protocols, IEEE wireless standards, and/or ITU/ET SI-defined mobile radio standards).

Nice To Haves

  • Master’s degree in related field
  • Familiarity with virtualization technologies and containerization (e.g., Docker, KVM)

Responsibilities

  • Define, design, implement, and test components of wireless protocol stacks, ranging from physical layer algorithms to layer 2/layer 3 procedures
  • Contribute to systems-level engineering discussions that reconcile the various use cases for our software in pursuit of best-in-class solutions
  • Work with customers (both internal and external to CACI) to help integrate our solutions into a wide variety of applications and use cases
  • Debug, test, and validate our capabilities using both unit tests as well as scenarios reported by our end users
  • Travel to other CACI locations and/or customer sites in the US as necessary (travel requirement is typically 0 - 15%)
  • Continuously improve and refine existing capabilities alongside new development opportunities
  • Work with a distributed team and manage your time effectively across multiple, simultaneous projects
  • Identify critical code paths, and offer performance optimizations based on analysis over multiple scenarios

Benefits

  • 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.
© 2024 Teal Labs, Inc
Privacy PolicyTerms of Service