Ciena is a global leader in high-speed connectivity that prioritizes a flexible work environment and individual growth. They are seeking an Embedded Software Engineer to design, implement, and maintain firmware across the full software stack for high-reliability products, collaborating with hardware engineers and systems architects.
Responsibilities:
- Develop and maintain embedded Linux firmware on OpenWrt based ONU systems
- Implement and extend PON subsystem software: XGS-PON registration, OMCI agent, eOMCI, Active-Active coordination, and MIB synchronization
- Integrate and configure the Ethernet switching subsystems on Ciena hardware, VLAN operations, port management, QoS (traffic classification, scheduling, shaping), and LACP
- Develop U-Boot bootloader extensions, firmware upgrade flows, and firmware version management
- Implement and maintain security features: TPM 2.0 integration, Secure Boot, OMCI-level PON encryption
- Write and maintain OpenWrt package Makefiles, custom feeds, and build scripts
- Develop and apply patches to the OpenWrt/prplOS base for platform-specific capabilities
- Participate in code review, write unit and integration tests, and debug issues from lab bring-up through field deployment
- Maintain technical documentation and component-level design notes
Requirements:
- Bachelor's or Master's degree in Computer Engineering, Electrical Engineering, Computer Science, or a closely related field
- 3–5 years of relevant professional experience in embedded software or firmware development
- Proficient in C for embedded/systems programming; familiarity with C++ a plus
- Hands-on experience with embedded Linux (kernel drivers, device trees, init systems, cross-compilation)
- Familiarity with OpenWrt or a comparable embedded Linux build system (Yocto, Buildroot)
- Working knowledge of networking fundamentals: Ethernet, VLANs, QoS, LACP, TCP/IP
- Experience with bootloaders (U-Boot preferred) and firmware lifecycle management
- Comfortable using Git, Make, and Linux command-line toolchains
- Experience with PON technologies (XGS-PON, GPON) and the OMCI protocol stack (ITU-T G.988)
- Familiarity with Marvell/Broadcom switching components or equivalent merchant silicon SDK for switching/routing ASICs
- Experience integrating TPM 2.0 and/or Secure Boot in embedded platforms
- Knowledge of NAND flash memory layouts, UBI/UBIFS, and MTD subsystems
- Experience with inter-process communication mechanisms (ubus, Unix sockets, shared memory)
- Nice to have CAN bus experience