Job Description
VIAVI (NASDAQ: VIAV) is a global provider of network test, monitoring and assurance solutions for telecommunications, cloud, enterprises, first responders, military, aerospace, and railway. VIAVI is also a leader in light management technologies for 3D sensing, anti-counterfeiting, consumer electronics, industrial, automotive, government and aerospace applications.\nWe are the people behind the products that help keep the world connected at home, school, work, at play, and everywhere in between. VIAVI employees are passionate about supporting customer success and we welcome people who bring their best every day to the company - to question, to collaborate and to push for solutions that will delight our customers.\nThe VIAVI RANtoCore(TM) platform offers end-to-end testing from Radio Access to Edge to Core.\nTeraVM products within this platform are enabling successful commercial wireless deployments guaranteeing the highest standards.
TeraVM is a complete end-to-end validation solution enabling carriers, mobile virtual network operators and network equipment vendors to validate the network topologies, systems and devices by generating control and user plane traffic.\nStatistics and key performance indicators are provided to validate the functionality and performance of mobile services or to assess performance of individual nodes of the mobile network.\n\nSenior / Software Engineer (C++, Python & Cloud)\n\nAs a Senior Software Engineer your tasks will primarily revolve around building software by writing code, as well as modifying software to fix errors, adapt it to new hardware, improve its performance or upgrade interfaces. You will also be involved in directing system testing, validation procedures and working with customers or departments on technical issues including software system design and maintenance in order to meet the customer's high-quality requirements for stability and availability.\n\nDuties & Responsibilities:\n\nClear and concise design of functionality and components.\nWriting clear and understandable code according to best practices.\nYou are responsible for the design and implementation of test scenarios for the system to be tested as well as analyzing the system's behavior.\nYou have experience in the integration of load and performance test suites in CI/ CD pipelines and the possibility to interpret and summarize performance test metrics and present the results to key stakeholders.\nResponsible for the evaluation and documentation the performance of automated test cases and test results.\nCreate and maintain effective cross-functional team relationships to ensure team satisfaction.\nMaintain knowledge of telecommunications industry/market domain knowledge.\nWork within a multi-disciplinary cross-functional team.\nTraining and coaching our customers in the operation of test automation and the use of test tools.\nPre-Requisites / Skills / Experience Requirements:\n\nEducation and Experience Required:\n5+ years of experience in software development and proven hands-on (complex) problem-solving skills.\nVery good knowledge of C/C++, a good knowledge of language specification and experience with the entire software development lifecycle, as well as programming on Linux.\nExperience with IPC, including socket programming and hands-on experience with multithreading, including race conditions, deadlocks, debugging and profiling (e.g., perf).\nPractical experience and in-depth knowledge of STL and Boost, an understanding of data structures and algorithms.\nExcellent problem-solving and multitasking skills, as well as a logical and pragmatic attitude.\nMotivation to create lowest latency components.\nKnowledge and Skills:\nOS Proficiency - Linux (Ubuntu/Debian/RedHat).\nGood Understanding of Networking Concepts IP, UDP, TCP, SCTP.\nLinux scripting - Shell scripting, Python, Groovy.\nExperience with Test Automation tools such as Jenkins, Robot or similar.\nExperience in working with Virtualization technologies such as:\nCHRoot, KVM, ESXI.\n\nPrivate and Public Cloud - AWS, Azure, OCI, GCP.\n\nOpenshift / Docker / Containers.\nMust have demonstrable knowledge of mobile network protocols, services and applications used by mobile operators and network equipment manufacturers.\nL4-L7 application protocols, OSI Model and common routing and switching protocols.\nPreferably having good knowledge of 3GPP telecommunications protocols, e.g., 3G/4G/5G application protocols.\nExperience with Git and codebase management.\nKnowledge of Telecom Network topologies, components and architectures.\nAbility to perform/drive resolution of problems on combinations and interactions of products.\nAble to communicate and present complex issues with assurance and confidence.\nDemonstrates the use of consulting skills including: questioning, listening, ideas development, permission and rapport, and influencing.\nAbility to conduct/lead oral status/technical interchange meetings with cross-functional teams on small- to medium-sized engagements.\nOwn and produce test suite documentation. Ability to translate technical details into concise and easy to understand written form.\nExcellent written and oral communication skills, strong team player, self-starter and detail-oriented.\nStrong decision-making ability to troubleshoot problems and bring resolution.\nFluency in English, German is a plus.\nMust have Engineering or Software development background.\nTravel Requirements:\nThe role is likely to involve remote and some travel to key customer site for direct engagements - flexibility to travel may be required (Up-to 20%).