Embedded Networking Software Engineer - Boksburg Verfied

Salary Negotiable Boksburg, Gauteng Boksburg, Gauteng more than 14 days ago 24-05-2016 10:57:19 AM
21-06-2016 10:57:19 AM
Embedded Networking Software Engineer:

Responsibilities:
Work as part of a team to design, develop, debug, test and support high-performance networking software.
The ideal candidate will have the following experience and skills:
• Master's or Bachelor's degree in Electronics Engineering, Computer Engineering or Computer Science with at least two years of relevant work experience.
• Proficient in embedded programming (C/C++) and scripting languages (e.g. bash, Bourne shell, Python).
• Experience with IXP/NFP software development (C/assembler) is desired.
• Extensive experience with development and debugging on a Linux platform is required (GCC/G++, revision control systems, build systems, troubleshooting, debugging and profiling tools).
• Experience with embedded systems and embedded software development is required. Experience with multi-threaded programming is desired.
• Knowledge of major network protocols such as TCP, IP, HTTP, Ethernet, ARP, ICMP, UDP as well as typical network device operations such as parsing, classifying, filtering and forwarding traffic is desired.
• Knowledge w.r.t. implementation of network protocols and device driver/network stack internals for Linux and/or other embedded operating systems is desired.
• Knowledge of virtualization technologies (e.g.hypervisors, IOV) is desired.
• Extensive experience with designing and optimizing software to meet specified performance goals is required.
• Experience with network security protocols (e.g., IPsec) is desired.
• Knowledge of network switching and routing including network design, L2 bridging, STP, L3 routing and dynamic protocols is desired.
• Assembly language programming experience is advantageous.
• Ability to work in multi-disciplined team environment is required.
• Strong oral and written communication skills are required.