Software Engineer II, Network Datapath
- Discuss this with your agent
- Open in Claude
- Open in ChatGPT
Prepare application
- Draft this with your agent
- Open in Claude
- Open in ChatGPT
Role details
Tech stack
+26 more
Job description
DigitalOcean is looking for a Senior Software Engineer, Network Datapath to help build and evolve the software that powers high-performance networking across our cloud infrastructure.
You will work at the intersection of networking, operating systems, distributed systems, and high-performance software, developing datapath technologies that enable DigitalOcean to deliver high throughput, low latency, and predictable network performance at scale.
This role will focus on the software running in and around the network datapath, including packet processing, forwarding, routing, acceleration, observability, and integration with host and hardware-based networking components. You will work closely with Network Infrastructure, Compute, Availability, and hardware teams to design, implement, optimize, and operate production networking systems.
The ideal candidate is a strong software engineer with deep networking knowledge who enjoys working close to the system and is excited about optimizing the path that packets take through cloud infrastructure.
What You’ll Be Doing
- Design, develop, and optimize high-performance network datapath software for DigitalOcean’s cloud infrastructure.
- Build and improve packet-processing and forwarding systems with a focus on throughput, latency, CPU efficiency, scalability, and reliability.
- Develop networking functionality across the host, kernel, user space, and hardware-accelerated datapath.
- Work with technologies such as Linux networking, eBPF, XDP, DPDK, AF_XDP, SR-IOV, and programmable datapaths.
- Analyze packet-processing paths and identify opportunities to eliminate bottlenecks and improve performance.
- Develop software for routing, packet filtering, encapsulation, tunneling, load balancing, traffic steering, and network virtualization.
- Build and improve datapath observability, telemetry, debugging, and performance monitoring.
- Design software that integrates with DPUs, SmartNICs, programmable NICs, and other hardware acceleration technologies.
- Develop automated testing and benchmarking frameworks to validate datapath correctness and performance.
- Investigate complex production networking issues, including packet drops, latency, throughput degradation, CPU utilization, and unexpected traffic behavior.
- Work with Network Infrastructure and Compute engineers to integrate datapath functionality into DigitalOcean’s broader infrastructure architecture.
- Contribute to the design and implementation of next-generation network architectures.
- Author RFCs, architecture documents, technical proposals, design documents, and implementation plans to drive complex networking initiatives.
- Clearly document technical decisions, tradeoffs, performance characteristics, dependencies, and operational considerations.
- Participate in design reviews and provide technical guidance to other engineers.
- Mentor engineers and contribute to improving software engineering and networking practices across the organization., At the Senior Engineer level, you will be expected to:
- Own significant technical components and deliver them from design through production.
- Solve complex performance and reliability problems in the network datapath.
- Make sound technical decisions based on measurable performance and operational requirements.
- Develop scalable solutions rather than one-off fixes.
- Proactively identify architectural and performance bottlenecks.
- Work effectively across Network Infrastructure, Compute, Security, and other engineering organizations.
- Produce clear RFCs and technical documentation that enable teams to align on complex architectural decisions.
- Mentor other engineers and raise the technical bar within the team.
- Use AI and modern engineering tools to increase personal and team leverage and accelerate delivery.
Requirements
- Strong experience designing and developing production software in C, C++, or Go.
- Strong understanding of networking and packet processing.
- Experience developing software for Linux-based networking systems.
- Solid understanding of networking concepts including TCP/IP, routing, switching, VLANs, VXLAN, BGP, ECMP, NAT, load balancing, and network virtualization.
- Experience debugging and optimizing performance-sensitive systems.
- Understanding of Linux networking internals, including the Linux kernel networking stack, network namespaces, sockets, queues, interrupts, and NIC drivers.
- Experience with one or more high-performance networking technologies such as DPDK, XDP, eBPF, AF_XDP, or SR-IOV.
- Experience with multithreaded and concurrent software.
- Strong understanding of performance analysis, profiling, benchmarking, and troubleshooting.
- Ability to reason about complex systems across hardware, operating systems, networking, and applications.
- Ability to independently drive projects from technical design through implementation and production deployment.
- Strong technical writing skills, with the ability to produce RFCs, architecture/design documents, technical proposals, and other documentation required to drive engineering projects.
- Strong communication skills and ability to work effectively across engineering teams.
Experience with hardware-accelerated networking is highly valuable. This includes:
- Experience developing software for DPUs, SmartNICs, IPUs, or programmable NICs.
- Understanding how functionality can be distributed between host CPUs, NICs, DPUs, and switches.
- Experience with DPU-based networking, security, storage, virtualization, or packet processing.
- Experience with programmable datapaths such as P4, eBPF, or other programmable data-plane technologies.
- Understanding of PCIe, DMA, queues, interrupts, RSS, offloads, and NIC hardware architecture., * Experience working on cloud networking or hyperscale infrastructure.
- Experience developing Linux kernel networking code or NIC drivers.
- Experience with DPDK, XDP, eBPF, AF_XDP, or DPU-based datapaths in production.
- Experience with 400G+ networking.
- Experience with high-performance packet processing at 10/25/40/100/200/400G+ speeds.
- Experience with network virtualization and overlay technologies such as VXLAN/EVPN.
- Experience with programmable switches.
- Experience with performance analysis using tools such as perf, eBPF tooling, flame graphs, or hardware performance counters.
- Experience building network datapath tests and benchmarking infrastructure.
- Contributions to Linux, DPDK, eBPF, OVS, or other networking/open-source projects.
About the company
- We innovate with purpose. You’ll be a part of a cutting-edge technology company with an upward trajectory, who are proud to simplify cloud and AI so builders can spend more time creating software that changes the world. As a member of the team, you will be a Shark who thinks big, bold, and scrappy, like an owner with a bias for action and a powerful sense of responsibility for customers, products, employees, and decisions.
- We prioritize career development. At DO, you’ll do the best work of your career. You will work with some of the smartest and most interesting people in the industry. We are a high-performance organization that will always challenge you to think big. Our organizational development team will provide you with resources to ensure you keep growing. We provide employees with reimbursement for relevant conferences, training, and education. All employees have access to LinkedIn Learning’s 10,000+ courses to support their continued growth and development.
- We care about your well-being. Regardless of your location, we will provide you with a competitive array of benefits to support you from our Employee Assistance Program to Local Employee Meetups to flexible time off policy, to name a few. While the philosophy around our benefits is the same worldwide, specific benefits may vary based on local regulations and preferences.
- We reward our employees. The salary range for this position is based on market data, relevant years of experience, and skills. You may qualify for a bonus in addition to base salary; bonus amounts are determined based on company and individual performance. We also provide equity compensation to eligible employees, including equity grants upon hire and the option to participate in our Employee Stock Purchase Program.
- DigitalOcean is an equal-opportunity employer. We do not discriminate on the basis of race, religion, color, ancestry, national origin, caste, sex, sexual orientation, gender, gender identity or expression, age, disability, medical condition, pregnancy, genetic makeup, marital status, or military service.
Apply for this position
This job is hosted externally. Click below to view the full posting and apply.
Prepare application
- Draft this with your agent
- Open in Claude
- Open in ChatGPT
Good distractions
Talks and stories from around this role — technically off-topic, practically not.
Moments
Explore playlistsVideos
See allRelated articles
See all
Highest Paying Tech Companies for Developers
Is Software Engineering Over-Saturated?
Best Countries for Software Engineers
Why Upskilling And Reskilling is Important For Developers