Position: C/C++ Tech Lead
Company: PLVision
Category: C++
Experience required: 5y
English level: intermediate

We are looking for an experienced Development/Tech Lead 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 Tech Lead, you will be in charge of our engineering team, working directly with the Customer to enable their product launch. The team will be responsible for R&D, integration, product support, and debugging (troubleshooting) activities. 

You will join a collaborative environment with open, transparent communication, well-established processes, a minimum of formalities and a maximum of trust. 

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
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.

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.


Vacancy responsibilities:
● Manage and lead the team responsible for enabling SAI/SONiC support for new hardware
● Create the Architecture and Design documentation. Maintain the Design documentation in order 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

Vacancy 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++
● 7+ years of commercial experience in Software Engineering in Embedded Application Development
● Knowledge of technical English at Intermediate level and higher

Vacancy plus options:
● 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