Embedded Software Developer (Mid-Level) - Network Switch
Location: Hanoi, Vietnam. Full-time.
About the role
We are building a new switching software team in Hanoi to own the network operating system on Zhone's carrier Ethernet switches. These are products running in live operator networks in Europe.
This is a role for a strong embedded Linux developer who wants to become a switching specialist.
Previous switch silicon experience is not required. What we need is depth in embedded C on
Linux, a real understanding of networking, and the appetite to learn quickly — the specialist
knowledge is what the senior developers on the team will teach you.
What you will do
- Implement and maintain switching features on our Linux-based NOS — VLANs, link aggregation, spanning tree, QoS, access lists, multicast snooping, DHCP relay.
- Write drivers and platform code against switch ASIC and PHY SDKs.
- Build and debug images for our switch platforms, and diagnose failures on real hardware in the lab.
- Write test cases and automation that prove a feature works and keep it working.
- Investigate and resolve defects reported from customer networks.
- Document what you build, including build and debug procedures.
What we offer
Structured mentorship from senior switching developers and a deliberate path from general embedded work into a specialism that is scarce in the market. You will work on hardware you can hold, in networks carrying real subscriber traffic.
- 3–6 years of embedded software development, primarily in C.
- Solid embedded Linux experience: cross-compilation, kernel modules or drivers, user-space system software, and a build system such as Yocto, Buildroot or equivalent.
- Networking knowledge — the OSI model in practice, Ethernet framing, VLANs, switching versus routing, TCP/IP. Hands-on with Wireshark or equivalent.
- Ability to work from a datasheet and a register map, and to debug on hardware with a serial console and JTAG.
- Version control (Git; SVN useful) and a disciplined approach to code review.
- Working English, at least in reading and writing.
- Bachelor's degree in Computer Science, Electronics, Telecommunications or equivalent experience.
Nice to have
- Exposure to switch or router software, or to an ASIC/NPU SDK.
- Telecom or networking equipment background — OLT, DSLAM, CPE, base station, enterprise switching.
- Scripting for test automation (Python).
- L2 protocol implementation experience of any kind.
- Familiarity with SNMP, CLI frameworks, or NETCONF/YANG.