Senior Engineer, Network
Job description
About the role
Custom network topologies for V-BAT move from design to deployment on unmanned aerial systems used in contested airspace. Embedded Linux networking features ship to support global defense operations.
Software engineers turn product ideas into working code. Engineers work in small teams, review each other's work, and ship in small batches. Most teams follow agile practices such as sprints and daily standups. Engineers also write tests, fix bugs, and improve performance. The field values clear communication as much as technical skill. Engineers spend part of every week on planning, code review, and debugging, not just writing new code. The ability to explain a technical decision in plain words separates strong engineers from the rest.
Key facts
Requirements
Hold a Bachelor's degree with 5+ years of relevant experience, or a Master's with 4+ years, or a PhD with 2+ years. Write robust software in C, C++, or Python in a Linux environment, with a record of shipping software that interacts directly with the OS networking stack. Demonstrate deep understanding of Linux networking fundamentals such as netlink, IP routing and tables, iptables/nftables, TUN/TAP interfaces, Linux network namespaces, and socket programming. Apply solid grasp of Layer 2 and Layer 3 fundamentals, custom routing protocols, VLAN tagging, QoS and traffic management, and VPN or tunneling mechanisms like OpenVPN, GRE, IPsec, or custom user-space tunnels. Troubleshoot network degradation using low-level tools such as tcpdump, wireshark, iproute2, and iperf in lossy, high-latency, or bandwidth-constrained conditions. Show a proven track record of successfully shipping products and navigating development cycles to deliver high-quality solutions on schedule.
Nice to have
Bring experience developing embedded Linux networking applications with build systems like Yocto or OS-level customization tools. Collaborate with RF and hardware engineers to design network protocols and topologies tailored for novel radio networks. Architect network solutions for robotics, autonomous vehicles, aerospace, or edge computing hardware. Apply familiarity with network security, public key infrastructure, and cryptographic tunnels in embedded systems.
Practical notes
Typical interview steps
Hiring for engineering roles usually starts with a recruiter screen, followed by one or two technical rounds. Candidates often solve a coding problem, discuss past projects, and answer system design questions. Some loops include a take-home task. Final rounds typically cover team fit and give candidates a chance to ask questions. Interviewers look for how you break down an unfamiliar problem, not just whether you reach the answer. Practicing a few problems aloud and reviewing your own past projects are the best preparation.
Good to know
Network engineering for defense unmanned systems often operates in denied environments with strict reliability and security requirements. Common tools include Linux networking stacks, software-defined interfaces, and traffic profiling utilities. Teams work closely with hardware and field operations to ensure connectivity in harsh conditions. Rapid iteration and strict quality standards are typical in safety-critical applications.
Questions to ask
Good questions to ask the employer in the interview: what does success look like in the first six months, how is the team structured, what is the current biggest challenge, and how are decisions made. Asking about growth paths and the review process is also well received. Employers expect questions, and good ones show preparation.
Career growth
Engineering careers usually progress from individual contributor to senior, staff, and principal levels. Some engineers move into management and lead teams of five to twenty people. Others stay on the technical track. Growth follows demonstrated impact, not tenure alone. A typical engineering ladder has clear levels with defined expectations for scope, quality, and mentorship. Moving up usually requires owning outcomes end to end rather than completing assigned tickets.