Embedded Software Developer (Mid-Level) - Network Switch
Job Type
Full-time
Description

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.

Requirements
  • 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.