Qareeb Logo
Back to all positions

Network Programming Engineer

Full-time4+ yearsOn-siteEngineering

About the Role

We are looking for a Network Programming Engineer who can design and implement custom communication protocols for IoT devices and edge systems. This role requires a deep understanding of networking stacks (OSI & TCP/IP), low-level packet processing, security mechanisms, and performance optimization across unreliable or resource-constrained networks. You will be responsible for building efficient and secure data transport between IoT devices, edge devices, and servers.

Responsibilities

  • Design and implement custom lightweight communication protocols.
  • Develop low-level networking modules (sockets, raw packet handling, custom headers).
  • Ensure robust error handling, retransmission, congestion control, and efficient bandwidth use.
  • Implement secure communication (TLS, DTLS, mutual authentication, encryption).
  • Optimize latency, throughput, and reliability across constrained networks.
  • Perform packet sniffing, traffic analysis, and protocol debugging using tools (Wireshark, tcpdump).
  • Integrate networking modules into embedded firmware (ESP32/STM32) and C++ applications.
  • Write detailed protocol specifications and documentation for internal and external use.
  • Collaborate with security engineers to ensure cybersecurity compliance and resilience against attacks (DoS, replay, spoofing, eavesdropping).
  • Conduct penetration testing, fuzzing, and fault injection for networking components.

Requirements

  • Strong understanding of OSI model, TCP/IP stack, and socket programming (TCP/UDP, raw sockets).
  • Experience with transport layer design (reliability, flow control, congestion control).
  • Knowledge of routing algorithms, multi-hop communication, NAT traversal.
  • Proficiency in C/C++ for systems programming (Linux, Windows and Embedded Systems).
  • Experience with network APIs (POSIX sockets, epoll, io_uring).
  • Familiarity with network packet processing frameworks (DPDK, PF_RING, Netmap, eBPF) is a big plus.
  • Strong knowledge of cryptography (AES, RSA, ECC), TLS/DTLS, PKI, secure key exchange.
  • Understanding of common network attacks (MITM, replay, flooding, spoofing) and defenses.
  • Familiarity with secure coding practices for networking applications.
  • Proficiency with Wireshark, tcpdump, Scapy, or similar tools for packet analysis.
  • Experience in network simulation tools (NS-3, Mininet) for protocol testing.
  • Experience with IoT communications (LoRa, Zigbee, BLE, MQTT) and video streaming protocols (RTSP, RTP, HLS, WebRTC).
  • Familiarity with embedded systems constraints (limited CPU, RAM, power).

Nice to Have

  • Experience in designing custom mesh/overlay networks.
  • Knowledge of real-time systems and deterministic networking (TSN, DDS).
  • Contributions to open-source networking libraries.
  • Background in telecom or security protocols (IPSec, QUIC, DTLS, WireGuard, OpenVPN internals).

Apply for this position

Interested in this role? Send us your resume and we'll get back to you soon.

Apply via Email

careers@qareeb.io

Job Summary

Type:Full-time
Experience:4+ years
Location:On-site
Department:Engineering