Job Description
Perform embedded system software design and implementation for leading high-performance data networking products as a member of a highly capable and dynamic engineering team.
Day-to-Day Responsibilities
• Perform software implementation of system infrastructure and application level functionalities
• Implement new features for networking platforms
• Propose design architectures and solutions for new features and enhancements
• Unit test implemented works
• Work closely with hardware engineering staff, particular in network processing, device driver, operating system enhancement, diagnostics, hardware initialization and bring up
• Create APIs and abstraction layer for hardware features for application layer
• Participate in hardware specification review and hardware functional verifications
• Resolve software issues that arise during testing cycle and from customers
• Work closely with software quality assurance engineering to review feature test plans and confirm functions
• Be involved in early-stage development of high-performance, next-generation networking platforms
Qualifications:
Education and Experience
• Bachelor’s Degree or equivalent work experience.
• 0 – 3 years software engineering experience.
• Experience working with one or more network processors with good knowledge of network processor operations
• Implementation of device drivers
• Hardware initialization and bring-up
• Experience with real time operating system
• Diagnostics and other system level tool development
• Experience with software development kits of commercial network processors
• Working experience on Linux and VxWorks kernel is a plus
• A strong background in In-Service-Software-Upgrade and other High Availability aspects,
• Strong OS concepts, preferably worked in areas of process/thread, memory management, interrupts, SMP concurrency, DMA, IO and caching
• Experience in traffic management and QOS implementation (classification, marking, policing, shaping)
• Chassis management: line modules, fan, power supply, temperature monitoring
• Familiarity with board-level bus standards such as PCI(e), i2c etc.
• Comfortable with technical and business English usage ( documents reading, e-mails, conference calls )
Physical requirements
• Frequent use of mouse and keyboard
• Frequent phone usage