About the Role
We are building a next-generation SDR-based wireless mesh network for real-time voice, video, and data in challenging environments. Our stack includes a custom PHY, frequency hopping, and multi-hop MANET routing.
We're looking for a Wireless Network Protocol Engineer who can bridge the gap between radio hardware (SDR) and Linux networking, designing robust MAC / link-layer protocols and integrating them with mesh routing (e.g., batman-adv).
If you enjoy making packets survive over noisy RF links, tuning protocols at MAC level, and working close to the metal, this role is for you.
Key Responsibilities
- Design & implement the radio MAC / link layer on top of our existing PHY:
Frame structure, sequence numbers, ARQ/retransmissions
Fragmentation / reassembly for larger packets
Basic QoS for voice, video, and file/data traffic
- Integrate the radio with Linux networking:
Expose the radio as a Linux network interface (netdev) (e.g., sdr0)
Make it work seamlessly with batman-adv or similar mesh / MANET protocols
Support standard IP networking over the mesh
- Work with frequency hopping and scheduling:
Implement time-slot based transmission and frequency hopping patterns
Design a link-layer scheduler that respects QoS and slot timing
- Performance & reliability:
Measure and optimise throughput, latency, and packet loss over multi-hop links
Tune parameters (MTU, retries, timers, CW, etc.) based on real-world tests
Work closely with the hardware / SDR / FPGA team on timing, RF tuning, and integration
Coordinate with application / AI / backend teams to understand traffic patterns and QoS needs
Write clear documentation for protocols, APIs, and configuration
Develop test plans, simulation setups, and on-device tests for various topologies
Must-Have Qualifications
- Strong proficiency in C for systems / embedded programming
- Solid understanding of computer networking fundamentals:
- Ethernet, ARP, IP, UDP/TCP
- L2 vs L3, routing vs bridging, MTU, fragmentation
- Hands-on experience with wireless protocols at MAC / driver level, for example:
- Wi-Fi (802.11), 802.11s mesh, Wi-SUN, LoRa/LoRaWAN, 6LoWPAN, ZigBee, or similar
- Experience with Linux networking:
- Working with network interfaces, routing, bridging
- Using tools like ip, tcpdump, wireshark, tc, etc.
- Exposure to at least one of:
- Mesh / ad hoc networking (batman-adv, OLSR, Babel, 802.11s, OpenWrt)
- Software Defined Radio (SDR) (USRP, GNU Radio, LimeSDR, etc.)
Nice-to-Have Skills
- Experience writing or modifying Linux network drivers (netdev):
- Familiarity with ndo_start_xmit, netif_rx, SKBs, and kernel networking APIs
- Knowledge of OFDM / COFDM, SNR, link budgets, and RF basics
- Experience with frequency hopping and time-synchronised TDMA or similar schemes
- Familiarity with OpenWrt or embedded Linux systems
- Experience with network security / crypto, such as:
- WireGuard, IPsec, TLS, or custom link-layer encryption
- Prior work on MANET research (ns-3 simulations, academic projects, theses, etc.)
What We're Looking For (Mindset)
- You like working close to the hardware, not just at the application layer
- You're comfortable debugging with tcpdump, Wireshark, logic analyzers, and RF tools
- You enjoy reading specs, protocol RFCs, and digging into kernel code when needed
- You can take a high-level we need voice + video over a mesh in bad RF conditions requirement and turn it into a concrete protocol and implementation plan