Senior Software Engineer - Rolling Meadows, IL
Listed on 2026-10-12
-
Software Development
Software Engineer, Embedded Software Engineer, C++ Developer, DevOps
Epiq Solutions develops cutting-edge software-defined radio (SDR) products and processing solutions to enable spectrum dominance for maritime, land, air, and space domains. With 15 years serving government and commercial enterprise customers and 25K+ devices fielded to date, Epiq Solutions is a trusted partner with a proven heritage of delivering open architecture products in radically small form factors where time-to-market, cost, and performance are critical for mission success.
For more information, visit
JOB SUMMARYWe are seeking a Senior Staff Embedded Software Engineer to join our team and contribute to the integration and development of embedded C/C++ drivers, libraries, and components into our SDR platforms. In addition, you will implement and maintain APIs using various standards (MORA, CMOSS, etc.) to enable end-user configuration, control, and status monitoring of the radios. Applicants should be comfortable with the full SW design and implementation flow including contributing to automated testing and CI/CD workflows.
This position involves close collaboration with a cross functional engineering team to deliver value to the end customer.
- Collaborate with cross-functional teams to design and implement new radio features and add support for new radio products Decompose high-level goals/requirements into the detailed software components and interfaces needed to achieve the desired result.
- Deliver reliable and accurate estimates for development efforts.
- Promote and implement best practices in software design, development, testing, and documentation.
- Drive continuous improvement initiatives across the development lifecycle.
- Develop applications on embedded Linux systems, using tools such as GCC, GDB, make/Cmake, docker, Jenkins, and rpm/deb packaging.
- Expand automated test coverage of codebase using Pytest with signal in the loop control of external test equipment including USB/ethernet-enabled RF switches, attenuators, signal generators, and vector signal analyzers.
- Support technical investigations and address technical questions.
- Conduct code reviews and mentor junior engineers to promote best practices.
- Document technical specifications, design patterns, and development processes.
Requirements
REQUIRED SKILLS- Bachelor's degree in Engineering, Computer Science, or equivalent experience in software development.
- Minimum of 5 years of experience in software development specializing in ARM-based Linux embedded sensors and systems or other hardware-intensive platforms.
- Proficiency in C/C++ library and application development.
- Experience with Python for scripting, tooling, and test automation.
- Familiarity with build systems and CI/CD workflows (Docker, Bitbucket, Jenkins, etc.).
- Hands-on experience working with memory-mapped I/O and hardware register interfaces.
- Knowledge of Linux-based embedded systems, preferably Debian.
- Strong communication skills—both written and verbal.
- Self motivated with exceptional analytical and problem-solving capabilities.
- Willingness to mentor junior engineers.
- Ability to collaborate effectively with a cross functional team of engineers.
- Eligibility to work on Federal contracts which require US Citizenship
- Strong proficiency in modern C++, including practical experience with C++20.
- Experience designing and maintaining clean C++ APIs, hardware abstraction layers, device interfaces, and reusable software libraries.
- Familiarity with FPGA-based systems and the software interfaces used to configure, control, and validate FPGA functionality.
- Experience with AMD Versal MPSoC or similar platforms.
- Experience working with Git-based source control, containerized development environments, issue tracking, and collaborative development workflows.
- Prof…
(If this job is in fact in your jurisdiction, then you may be using a Proxy or VPN to access this site, and to progress further, you should change your connectivity to another mobile device or PC).