Senior Packet Processing Software Developer (32079)

  • Ottawa, ONTARIO
  • Posted 2 days ago | Updated 11 hours ago

Overview

On Site
Full Time

Skills

Network Protocols
Network Operations
Embedded Software
Programming Languages
Python
Operating Systems
Testing
Software Deployment
Management
Organized
Documentation
Teamwork
Writing
Satellite
Scalability
Computer Science
Computer Engineering
Electrical Engineering
RSS
Linux
Network
Stacks Blockchain
Performance Tuning
C
C++
Network Programming
Computer Networking
TCP/IP
UDP
GRE
Cloud Computing
Analytical Skill
Conflict Resolution
Problem Solving
Collaboration
Communication
Attention To Detail
Design Software
Computer Hardware
Software Development
Satellite Telecommunications

Job Details

We are seeking a highly skilled Senior Software Engineer with expertise in Packet Processing to join our team. The ideal candidate will have extensive experience in designing and optimizing high-performance network systems, with a strong background in developing scalable, low-latency solutions for data-intensive environments. In this role, you will work on cutting-edge technologies to enhance network protocols and packet processing frameworks. Your contributions will play a key role in delivering robust, reliable, and efficient network operations, ensuring our systems meet the evolving demands of modern infrastructure.

Main Responsibilities:

  • Collaborate with experienced engineers in the design, coding, testing, and maintenance of software applications.
  • Develop and maintain embedded software modules using programming languages such as C++ and Python.
  • Design and implement high-performance packet processing applications using DPDK and similar frameworks.
  • Optimize network functions for maximum throughput and minimal latency.
  • Develop and maintain packet processing pipelines for various network functions.
  • Troubleshoot complex performance issues in packet processing applications.
  • Assist in the implementation of networking solutions to ensure seamless communication between software components.
  • Contribute to the development of software tools, libraries, and frameworks to enhance overall product quality and efficiency.
  • Participate in code reviews and provide constructive feedback to improve code quality and adherence to coding standards.
  • Collaborate with the team to troubleshoot and resolve software defects and technical issues.
  • Support the integration of software components on Linux operating systems.
  • Assist in the testing and validation of software features to ensure functionality and performance meet specified requirements.
  • Utilize cloud technologies to enhance software deployment and management.
  • Collaborate with cross-functional teams, including product managers and designers, to understand requirements and contribute to technical discussions.
  • Maintain clear and organized documentation of software designs, processes, and development tasks.
  • Demonstrate effective teamwork and communication skills, both orally and in writing.
  • Lead the design, development, and implementation of advanced satellite ground segment software systems, ensuring high performance, scalability, and reliability.

Education & Experience Required:

  • Bachelor's or Master's degree in Computer Science, Computer Engineering, Electrical Engineering, or a related field.
  • In-depth knowledge of packet processing development.
  • Experience with the Vector Packet Processing (VPP) framework is a plus.
  • Deep understanding of DPDK architecture and APIs.
  • Familiarity with modern NIC features (e.g., RSS, checksum offload, scatter-gather).
  • Experience with AF_XDP or similar kernel bypass technologies.
  • Strong understanding of Linux-based network stacks, kernel modules, and performance optimization.
  • Ideally 8+ years of experience in C/C++ for low-level network programming and high-performance packet processing.
  • Solid understanding of networking concepts and protocols, including TCP/IP, UDP, VXLAN, GRE, etc.
  • Familiarity with cloud technologies is a plus.
  • Strong analytical and problem-solving skills.
  • Ability to collaborate effectively within a diverse team.
  • Excellent oral and written communication skills.
  • Enthusiasm for learning new technologies and tools.
  • Detail-oriented with a commitment to producing high-quality software.
  • Ability to design software with consideration for hardware resource constraints.
  • Experience in software development for satellite communication systems is a plus.
Employers have access to artificial intelligence language tools (“AI”) that help generate and enhance job descriptions and AI may have been used to create this description. The position description has been reviewed for accuracy and Dice believes it to correctly reflect the job opportunity.

About Myticas LLC