Summary:
Duties & Responsibilities:
- Design and implement low-level network programming solutions including packet capture, traffic analysis, and protocol stack integration.
- Develop high-performance software in C++, Python, Go, and shell scripting for Linux environments.
- Write and maintain software that interfaces with hardware-level programming interfaces including PCIe, FPGA, NIC offload engines, and kernel bypass frameworks (e.g., DPDK).
- Collaborate with hardware and firmware teams to define software/hardware interface contracts and integration test plans.
- Build and maintain robust Linux system software including kernel modules, device drivers, and user-space daemons.
- Contribute to cross-platform initiatives including Windows drivers/services and web-based front-end tooling as project needs evolve.
- Participate in code reviews, architectural discussions, and cross-functional design reviews.
- Champion software engineering best practices: automated testing, CI/CD pipelines, documentation, and secure coding standards.
- Mentor junior and mid-level engineers; provide technical guidance and foster a culture of continuous improvement.
Pre-Requisites / Skills / Experience Requirements:
- 8+ years of professional software engineering experience, with at least 4 years in systems or network software development.
- Strong proficiency in C++ (C++14/17/20) and Python; familiarity with Go and shell scripting (Bash/Zsh).
- Deep experience with low-level network programming: raw sockets, libpcap, netfilter, tc/BPF, or equivalent.
- Solid understanding of Linux internals: process/thread management, memory management, file systems, networking stack, and IPC mechanisms.
- Proven experience writing software to interface with hardware-level interfaces (PCIe, FPGA, IOCTL, memory-mapped I/O, DMA, or similar).
- Strong grasp of concurrency, multi-threading, and real-time or performance-sensitive programming.
- Experience with version control (Git), build systems (CMake, Make), and CI/CD workflows.
- Bachelor’s degree in Computer Science, Electrical Engineering, or a related technical field (or equivalent experience).
If you have what it takes to push boundaries and seize opportunities, apply to join our team today.