Telecommunications Software Engineer
Protingent
- Falls Church, VA
- Permanent
- Full-time
The Telecommunications Software Engineer will be responsible for design, development, modification, and testing of software that implements the GSM and LTE protocol stacks for our cell tower in orbit. This includes:
- Developing and modifying Linux applications that implement the telecommunications functions required for our cell tower in orbit protocol stacks.
- Integrating telecommunications hardware and software systems, particularly software defined radios and Linux servers/computers
- Implementing inter-application coordination and communications using standard Inter-process communication (IPC) mechanisms available in Linux
- Developing test software and drivers to support unit, integration, and system testing of all telecommunications software functions.
- Writing this software in C, C++, or other languages in a Linux or Windows environment
- A bachelors degree (or better) in Telecommunications Engineering, Electrical/Computer Engineering, Software Engineering, Computer Science, or related field.
- At least five years of recent experience with telecommunications software implementing GSM and/or LTE protocols.
- Strong knowledge of telecommunications protocols, RF communications, and multiple access methods: LTE, EDGE, GPRS, HSPA, GSM, CDMA, TDMA, FDMA etc.
- Strong knowledge of all layers (user and control plane) of cellular network infrastructure elements, including RAN and Core network signaling (e.g. HSS, HLR, VLR, AuC, MME, EPC, eNB, S-GW, P-GW, etc.)
- Working knowledge of one or more of the following common protocols/standards: TCP/IP, SNMP, SDH/SONET, ATM, MPLS/GMPLS, Ethernet, Carrier Grade Ethernet, DSL, SS7, ISDN, Q2931, B-ISDN, X.25, 802.11, 802.16, SIP, MEGACO, or MGCP
- Understanding of software defined radio systems including Receiver architectures, Software channelization, Modulation/demodulation techniques, Spectral analysis, Error correcting codes
- Experience using wireless communication test equipment (spectrum analyzer, network analyzer, signal generator, etc.), analyzing test logs and isolating test failures.
- Demonstrated experience working with multiple programming languages (C, C++, Python), operating systems, and development environments.
- Experience with standard Inter-process communication (IPC) mechanisms available in Linux.
- Experience performing reverse engineering, analysis of software, and low-level programming desired.
- Direct Hire
- Location: Falls Church, VA