Job Description
Summary:
Plans, designs, develops and tests software systems or applications for software enhancements and new products including cloud-based or internet-related tools. Most companies should be able to match to a specific software development engineer position. Use this position if company does not breakout software development positions such as Software Engineer (Applications) (5141-5146) or Software Engineer (Systems) (5161-5166).
Duties & Responsibilities:
Job Summary
As a Software Development Engineer, you will join the TestCenter R&D team at Viavi Solutions (Beijing) Co., Ltd., contributing to the development of core components in an industry-leading network test platform. Your work will span network protocol stacks, traffic generation engines, and AI workload emulation, delivering high-performance test solutions to data center operators and network equipment vendors worldwide.
Responsibilities
- Participate in requirements analysis, software architecture design, and module design for core TestCenter subsystems, covering traffic generation, protocol control, and results/statistics pipelines.
- Independently deliver high-quality code and unit tests in C++, C#, and/or Python based on design specifications.
- Own integration and system testing for software modules, validating protocol correctness, performance targets, and hardware compatibility.
- Maintain existing software, resolve defects, and drive performance improvements including multi-threading race analysis and memory/latency tuning.
- Produce technical documentation including design documents, interface specifications, and test reports.
- Collaborate closely with domestic and international teams, participating in cross-timezone code reviews and technical discussions.
- Track the evolution of networking technologies and translate emerging requirements into product capabilities.
Qualifications
- Bachelor's degree or above in Computer Science, Software Engineering, Communications Engineering, or a related field.
- 7+ years of software development experience; prior experience on large-scale C++ projects is strongly preferred.
- Proficient in C++ or C#; familiar with Python; solid understanding of multi-threaded programming, locking mechanisms, and lock-free data structures.
- Familiar with the TCP/IP protocol stack and L2/L3 networking fundamentals; knowledge of RDMA/RoCEv2, InfiniBand, or AI cluster networking is a plus.
- Comfortable working in Linux/Unix environments with the ability to write Shell/Python scripts and perform system-level troubleshooting.
- Background in network testing, traffic generation, protocol emulation, or hardware-related development (FPGA, drivers) is a plus.
- Strong English reading and writing skills; able to read technical specifications and participate in English-language code reviews.
- Strong analytical mindset with a proven ability to diagnose complex, systemic problems; excellent communication and team collaboration skills.
- Genuine interest in high-performance networking and AI infrastructure.
职位概述
作为软件开发工程师,您将加入 Viavi Solutions(北京)有限公司 TestCenter 研发团队,参与业界领先的网络测试平台的核心组件开发。您将深入网络协议栈、流量生成引擎和 AI 负载仿真等方向,为全球数据中心和网络设备厂商提供高性能的测试解决方案。
岗位职责
- 参与 TestCenter 核心子系统的需求分析、软件架构设计和模块设计,涵盖流量生成、协议控制、结果统计等方向。
- 根据设计文档,独立完成高质量的 C++/C#/Python 代码编写和单元测试。
- 负责软件模块的集成测试和系统测试,覆盖协议正确性、性能指标和硬件适配等场景。
- 对现有软件进行维护、缺陷修复和性能优化,包括多线程竞态分析和内存/延迟调优。
- 撰写技术文档,包括设计文档、接口规范和测试报告。
- 与国内外团队紧密协作,参与跨时区的代码评审和技术讨论。
- 持续跟踪网络技术演进,将前沿需求转化为产品能力。
任职资格
- 计算机科学、软件工程、通信工程或相关专业本科及以上学历。
- 7 年以上软件开发经验,有大型 C++ 项目开发经历者优先。
- 精通 C++ 或 C#,熟悉 Python;熟悉多线程编程、锁机制和无锁数据结构。
- 熟悉 TCP/IP 协议栈及 L2/L3 网络基础知识;了解 RDMA/RoCEv2、InfiniBand 或 AI 集群网络者加分。
- 熟悉 Linux/Unix 操作系统,具备 Shell/Python 脚本调试和系统级故障排查能力。
- 有网络测试、流量生成、协议仿真或硬件(FPGA/驱动)相关经验者优先。
- 具备良好的英语读写能力,能够阅读英文规范文档和参与英文代码评审。
- 思路清晰,善于定位复杂的系统性问题;具备良好的沟通能力和团队协作精神。
- 对高性能网络和 AI 基础设施方向保持浓厚兴趣。
Pre-Requisites / Skills / Experience Requirements: