Embedded Networking Software Engineer - Johannesburg Verfied

Salary Negotiable Johannesburg, Gauteng Johannesburg, Gauteng more than 14 days ago 29-01-2016 8:08:53 AM
26-02-2016 8:08:53 AM
Job Title: Embedded Networking Software Engineer
Location: Johannesburg
Closing Date: 01 February 2016

Responsibilities:

Work as part of a team to design, develop, debug, test and support high-performance networking software.

Qualification:

Individuals with B or M degrees and a good academic record (average of 70+ %) will be preferred.
Recently qualified Graduates with good academic record will also be considered.


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.

NB: Please attach copies of your academic transcripts/qualifications with your application.