We are seeking a highly skilled Senior Software Developer with expertise in Networking to join our team. The ideal candidate will have a strong background in developing software solutions for network infrastructure , protocols, and routing algorithms. This position requires a deep understanding of networking concepts and hands-on experience in designing and implementing scalable and efficient networking software.
Main Responsibilities
- Design, develop, and maintain software components for networking and routing systems, including protocol stacks, routing algorithms, and network management tools.
- Collaborate with cross-functional teams, including network architects, product managers, and quality assurance engineers, to gather requirements and ensure the successful delivery of networking software solutions.
- Implement and optimize network protocols such as TCP / IP , OSPF , IS-IS , MPLS , and Segment Routing to enhance network performance, reliability, and scalability.
- Develop software for Metro Ethernet Forum (MEF) services, including E-Line , E-LAN , and E-Tree , transported over pseudowires.
- Create software modules for network configuration , monitoring, and troubleshooting, leveraging tools and frameworks such as SNMP , NetConf , and YANG .
- Analyze and improve the performance of networking software, identifying bottlenecks and implementing optimizations to reduce latency and increase throughput.
- Contribute to the design and development of distributed systems and microservices architectures for large-scale network deployments.
- Write clean, maintainable, and well-documented code, following best practices and coding standards.
- Participate in code reviews, providing constructive feedback and ensuring code quality and adherence to coding guidelines.
- Investigate and resolve complex networking issues, collaborating with network operations and support teams to troubleshoot and identify root causes.
Education & Experience Required
Bachelor's or Master's degree in Computer Science , Electrical Engineering , or a related field.Strong proficiency in software development, with a focus on networking and routing technologies .Strong programming skills in languages such as C++ and Python .Deep understanding of networking concepts, protocols, and architectures, including TCP / IP , VLANs , and routing protocols (e.g., OSPF , IS-IS , MPLS ), as well as network virtualization (e.g., SDN , NFV ).Experience with network simulation and emulation tools like NS-3 , OPNET , or GNS3 (preferred).Strong experience in developing fast path packet processing software using DPDK / VPP and PMD drivers (strongly desired).Knowledge of network security principles, including secure communication protocols (e.g., SSL / TLS , IPsec ) and network access control mechanisms.Familiarity with software development methodologies, such as Agile and Scrum .Excellent problem-solving and debugging skills, with the ability to analyze complex network scenarios and propose efficient solutions.Strong communication and collaboration skills, with the ability to work effectively in a team environment and convey technical concepts to both technical and non-technical stakeholders.Passion for continuous learning and staying up-to-date with emerging trends and technologies in the networking domain.