About this role.
This role at Canonical focuses on developing and integrating open source networking software for data center environments, specifically targeting Top-of-Rack switches and SmartNICs/DPUs. You will work with cutting-edge technologies like SONiC, DPDK, eBPF, and OVN, collaborating with silicon providers and public clouds. The position demands deep expertise in Linux networking, strong programming skills in C/C++ and at least one other language, and a passion for open source. It is a remote role with global travel twice a year, offering the opportunity to influence open source communities and shape future-proof networking solutions.
Role DNA
A quick view of the complexity, pace, ownership and collaboration implied by the job description.
Job Complexity
5/5Pace & Pressure
4/5Autonomy Level
4/5Communication Load
5/5Salary analysis
Estimated compensation compared with the broader US market for similar roles.
Core skills
Skills and capabilities most closely associated with this opportunity.
Cover letter sample
I am writing to express my strong interest in the Open Source Networking Software Engineer position at Canonical. With a background in Linux networking and a deep passion for open source technologies, I am excited about the opportunity to work on innovative solutions for ToR switches and SmartNICs/DPUs.
My experience includes hands-on work with C/C++ and Rust, along with practical knowledge of DPDK, eBPF, and OVN. I have contributed to upstream projects and thrive in collaborative, globally distributed environments, which aligns perfectly with Canonical's mission and operational model.
I am particularly drawn to the chance to influence open source communities and work with leading silicon providers to bring hyperscaler-class networking to enterprise customers. I am confident my technical skills and dedication to quality, security, and performance can make a meaningful contribution to your team.
Thank you for considering my application. I look forward to the possibility of discussing how I can support Canonical's goals in building the future of open source networking.
Sample interview questions
I have worked extensively with Linux networking, including tc, netfilter, and socket layers. In a recent project, I used eBPF for traffic filtering and load balancing, attaching XDP programs to high-throughput interfaces. This allowed us to reduce CPU usage by 40% compared to iptables while maintaining line-rate packet processing. I also used BPF maps for connection tracking and monitored performance with bpftool.
I would start by reproducing the issue in a controlled lab environment, then systematically check each layer: first verify the switch ASIC tables (e.g., routing, ACLs) using SAI/SONiC commands, then examine the kernel data path (e.g., netdev stats, tc filters) and finally use packet captures or counters to isolate the drop point. I would also leverage tools like tcpdump, ethtool, and maybe eBPF to trace packet traversal, cross-referencing configuration state to identify misconfigurations or bugs.
Kernel networking offers robustness and a rich protocol stack, but it introduces overhead due to context switches, the socket layer, and skb allocation. DPDK bypasses the kernel, using poll-mode drivers and hugepages to achieve high throughput and low latency. I would choose DPDK for high-performance data plane applications such as vSwitch acceleration or NAT, where line-rate processing is critical; otherwise, kernel networking is preferred for its maturity and ease of development.
I follow rigorous engineering practices: write comprehensive unit tests and integration tests, use static analysis tools, and ensure documentation is clear. For security, I follow best practices like input validation, avoiding buffer overflows, and keeping dependencies up-to-date. Performance is considered from the start—I profile code early and optimize only when necessary, always respecting the project's coding standards and reviewing feedback from maintainers.
In my previous remote role, we had to deliver a new feature in a three-week sprint across four time zones. I coordinated by using asynchronous communication tools like Slack and PR reviews, ensuring every task was well-documented and broken down to minimize dependencies. I also scheduled overlapping hours for sync meetings, which allowed for real-time problem-solving. Clear ownership and regular status updates kept everyone aligned, and we successfully delivered the feature on time.
Software has moved to play a central role in network technology. From outstanding routing implementations like Bird and FRR to overlay networking technology such as OVN/OVS and Cilium, from kernel with SwitchDev to userspace with DPDK, from P4 to OpenFlow, the relationship between network innovation and software continues to deepen. We are building teams to bring the very best open source networking software to market in a well integrated and opinionated stack that brings the latest hyperscaler innovation to end users and enterprise customers.
We work with networking silicon providers to optimize Ubuntu and related applications for their ASICs, boards and appliances. We aim to provide a complete open source stack for data center networking, from bare metal through virtualization, container and serverless, and also to address IoT networking systematically.
You will have a good chance of success if you are an outstanding software engineer, passionate about networking, with a special interest in the interface of hardware ASICs for acceleration and software for innovation and control. We value experience in open switch initiatives such as SoNIC and DENT, and upstream experience with components such as routing, kernel networking, eBPF, DNS, firewalls and load balancers. Our selection process is rigorous and requires work from the candidate as six to eight interviews over a period of months. We look for excellent academic results and a commitment to quality, resilience, documentation, security and performance in your work.
At Canonical you will have the opportunity to engage with the broader open-source community and industry leading partners in developing future-proof networking solutions. We’re looking for individuals who can help build a thriving community, contribute to a broad range of technologies, and contribute to the deployment of Ubuntu, Ubuntu Core, Private Clouds, MAAS and Kubernetes across a broad range of devices and use cases.
Location: we have network software engineering roles in APAC (Top-of-Rack switches) and Americas (SmartNIC/DPU) time zones.
What your day will look like
- Work with the most advanced operating systems and network application technologies available
- Participate upstream and deliver the Ubuntu SoNIC stack
- Collaborate with public clouds and network silicon providers
- Design and implement the best software-defined networking experience for the data center
- Write high-quality, well-designed, fast, secure and well-documented software
- Debug issues and produce high-quality fixes
- Collaborate proactively with a globally distributed organization
- Contribute to technical documentation to make it the best of its kind
- Display technical leadership internally, towards our partners, and in the open source communities
- Influence open-source projects and communities
- Work from home, with global travel twice a year for company events of up to two weeks duration
What we are looking for in you
- An exceptional academic track record
- Undergraduate degree in Computer Science or STEM, or a compelling narrative about your alternative path
- Drive and a track record of going above-and-beyond expectations
- Knowledge of networking: architecture, design, and protocols
- Understanding of Linux networking, from kernel to user space
- Fluency in C/C++ and at least one of Rust, Python or Golang
- Professional written and spoken English
- Experience with Linux
- Excellent interpersonal skills, curiosity, flexibility, and accountability
- Passion, thoughtfulness, and self-motivation
- Excellent communication and presentation skills
- Result-oriented, with a personal drive to meet commitments
- Ability to travel twice a year, for company events up to two weeks each
Additional skills that you might also bring
- Familiarity with existing open source networking technologies: SONIC / SAI, kernel (e.g. eBPF, AF_XDP), DPDK, Switchdev, OVN, Open vSwitch.
- Familiarity with data path hardware acceleration protocols and interfaces, such as RDMA, RoCE, iWARP, NVMe, SR-IOV
- Computer architecture knowledge of x86, ARM, and RISC-V
- Experience in complex IP network engineering and implementation
- Experience with virtualization technologies, e.g., QEMU, KVM, etc.
- Previous contribution to open source projects and community involvement
- Performance engineering and security experience
What we offer you
We consider geographical location, experience, and performance in shaping compensation worldwide. We revisit compensation annually (and more often for graduates and associates) to ensure we recognise outstanding performance. In addition to base pay, we offer a performance-driven annual bonus. We provide all team members with additional benefits, which reflect our values and ideals. We balance our programs to meet local needs and ensure fairness globally.
- Distributed work environment with twice-yearly team sprints in person
- Personal learning and development budget of USD 2,000 per year
- Annual compensation review
- Recognition rewards
- Annual holiday leave
- Maternity and paternity leave
- Employee Assistance Programme
- Opportunity to travel to new locations to meet colleagues
- Priority Pass, and travel upgrades for long haul company events
About Canonical
Canonical is a pioneering tech firm at the forefront of the global move to open source. As the company that publishes Ubuntu, one of the most important open source projects and the platform for AI, IoT and the cloud, we are changing the world every day. We recruit on a global basis and set a very high standard for people joining the company. We expect excellence – in order to succeed, we need to be the best at what we do. Canonical has been a remote-first company since its inception in 2004. Working here is a step into the future, and will challenge you to think differently, work smarter, learn new skills, and raise your game.
Canonical is an equal opportunity employer
We are proud to foster a workplace free from discrimination. Diversity of experience, perspectives, and background create a better work environment and better products. Whatever your identity, we will give your application fair consideration.
#LI-remote
Annual salary information is not provided for this position. Explore salary ranges for similar roles in our Salary Directory ›
This job listing has been manually reviewed by the Jobicy Trust & Safety Team for compliance with our posting guidelines, including verification of the company's legitimacy, accuracy of job details, clarity of remote work policy, and absence of misleading or fraudulent content.






