Senior SDR Software Engineer
Listed on 2025-12-01
-
Software Development
Software Engineer, C++ Developer
How you will make an Impact (Job Summary)
SPX is a diverse team of unique individuals who all make an impact. As a Sr. Software Defined Radio (SDR) Software Engineer, you will actively participate in the development of radio frequency signal acquisition/processing/storage/retrieval, IQ data transport, direction finding and analysis systems used for spectrum monitoring and communications intelligence purposes. This person will apply their strong real time embedded server development background, knowledge of radio frequency communications, reception and signal processing techniques as well as software development skills to meet signal detection, parameter measurement and analysis challenges facing spectrum regulators and intelligence organizations around the globe.
Specifically, this person will develop software to implement architectures using TCI’s existing technical base along with new development work that will satisfy both customer specific and market generic requirements.
While each day brings new opportunities at SPX, your core responsibilities will be:
- Develop a deep understanding of TCI’s Embedded server architectures and become a key contributor to architecting and implementing improvements and new features for our products.
- Modify existing software and/or develop new software to implement improvements or add new features to our systems. Support testing and analysis of new hardware and software performance up to the system level.
- Provide technical support to our product support group by interfacing with customers to deploy new products, solve issues found in the field and to understand potential product improvements.
- Other duties as assigned.
We each bring something to the table, and we are looking for someone who has:
Required Experience- Experience with FPGA co-processing (ie. Spectrum Signal Processing algorithms, FFT, CCDF, ZIP, DDC,Geo location) and managing Interrupts/data blocks
- Extensive C/C++ software development experience (6+ years) with proficiency in such language features as templates, Lambda functions, vectors, maps and algorithms etc. using C++17 or newer standards
- Extensive experience in design, implementation and testing of complex real-time multithreaded/multitasking/multicore embedded server software supporting multiple simultaneous clients
- Experience with designing well-crafted C++ classes/modules
- Clear understanding of ADCs, RF Receiver architectures and associated quality metrics
- Cross-platform programming for Linux and Windows targets
- Experience in developing/using Windows and Linux libraries
- Clear understanding of Synchronization primitives, Queueing and task scheduling
- TCP Message based Client/Server communication
- Realtime hardware control and data acquisition
- SCPI control
- TCP/UDP Networking and socket level programming
- C++/C API programming (developing and using)
- GUI design and programming using Visual Studio and Open-source tools
- Databases and database programming (incl. SQLite)
- Software QA testing
- Ability to quickly learn and support a large existing C++ code base.
- Excellent communications skills
- Ability to write technical product documentation
- Knowledge of Signal Direction finding / Geolocation concepts
- Extensive Math, Digital Signal Processing (DSP) and RF communication signals background
- Signal analysis techniques and tools
- RF system and Software Defined Radio (SDR) Platforms such as HackRF, USRP, Pluto and application Frameworks such as GNU Radio, Cubic
SDR, SDR++ etc. - Xilinx/AMD Zynq and/or Ultra Scale+ development experience
- PCIe and NVMe interfaces
- Programming expertise:
- Machine learning concepts and programming
- Python programming
- Tools:
- MATLAB/Octave experience
- Tensor Flow, Py Torch
- Microsoft Visual Studio, Visual Studio Code, TFS and Git
- Eclipse IDEs for C++ and Java development
- RF Measurement equipment (VSA/spectrum analyzers, signal generators, and other electronic test equipment)
- Windows, including desktop and embedded variants (IoT)
- Intel IPP
- Linux utilities and shells
- Experience with MFC, C# and Windows…
(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).