Senior C/C++ Software Engineer



We are looking for a Senior Software Engineer with in-depth Linux knowledge, a deep understanding of networking protocols, and a perfect knowledge of С or С++ language.

In this position you will be a part of a new experienced team, enabling SONiC (Software for Open Networking in the Cloud) OS support on top of SAI (Switch Abstraction Interface) for a new router product. SONiC is a highly innovative product and currently the world’s most popular open-source network OS. The goal of our project is also to harden both SAI and the SONiC-based product and ensure their highest quality.

As a Senior Software Engineer, you will be working directly with the Customer as a member of the team responsible for development, integration, product support, and hardening activities. You will join a collaborative environment with open, transparent communication, well-established processes, a minimum of formalities, and a maximum of trust.

Dedicated recruiter:
Yaryna Kunynets
Yaryna Kunynets

Project Definition Project Definition

  • There is a community-driven test suite available for SONiC. The verification team's goal is to build a test environment and extend test coverage for switch/router products. The test part of the project extends from the development of the test environment, test strategy and test plan to the actual testing. On this project, you will work with various technologies – Python3, Bash, Linux, Docker – as well as the physical hardware.

Client Profile Client Profile

  • Our customer is a leading global networking equipment, software and switching ASIC (chip) vendor, based in the U.S. Their networking products enable end-to-end solutions for data center, ISP/Telecom and enterprise clients.

Responsibilities Responsibilities

  • Software development and testing to enable the SAI/SONiC support for new platforms;

  • Create the Architecture and Design documentation. Maintain the Design documentation to assist in debugging and modification of software;

  • Ensure SAI/SONiC features (components) are implemented and documented according to the requirements;

  • Work closely with the test team to give them a development perspective. You will be responsible for various infrastructure support and automation tasks preparation;

  • Establish test metrics and mentoring team members while ensuring that all functionality is implemented on time.

Requirements Requirements

  • In-depth Linux OS knowledge;

  • Deep understanding of networking protocols (Layer 2 or Layer 3 networking protocols implementation, TCP sockets programming);

  • Perfect knowledge of C or C++;

  • 5+ years of commercial experience in Software Engineering in Embedded Application Development;

  • Knowledge of technical English at Intermediate level and higher.

Would be a plus Would be a plus

  • Experience with SAI/SONiC implementation and integration;

  • Knowledge of scripting languages like Bash or Python;

  • Knowledge of Ansible;

  • Experience with Linux networking;

  • Experience with virtualization/containerization technologies;

  • Good understanding of CI/CD processes.

About PLVision About PLVision

  • We are a software R&D firm, specializing in solutions for Computer Networking, Embedded Systems, and the Internet of Things Connectivity, that operates on the global market since 2007.

Want to develop innovative products? Let's talk!

You can attach your resume here:

file not selected
By filling out your contact information in this form, you agree to our Privacy Policy.*