Telecommunications Software Engineer
UbiquitiLink is a space communications venture with a novel idea for a constellation of nanosatellites dedicated to telecommunications services. Founded by experienced commercial space entrepreneurs, the company is looking for a Telecommunications Software Engineer who can help design and test telecommunications software needed operate our cell towers in orbit.
The Telecommunications Software Engineer at UbiquitiLink will be developing a variety of telecommunications applications. The software will initially be tested in our development laboratory and then on the satellite prototype that simulates orbit operations and the software engineer will also be responsible for implementing methods of data acquisition to ensure successful testing, verification, and validation.
We build systems fast so the perfect candidate for this role will have significant previous experience designing, developing, and testing telecommunications software on rapid time lines. We are looking for engineers that enjoy a challenge and have a track record of creative thinking to solve unconventional problems.
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 Bachelor’s 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
Job Location: Washington, DC area.
To apply, forward a cover letter and resume to Careers@ubiquitilink.com stating the position of interest in subject line.