C++ Software Engineer, Helderberg

We are looking for a C++ Software Engineer to join our client’s highly specialized team in the Helderberg area of Cape Town.  Our client develops electronic micro-assemblies and hardware for automotive diagnostics, as well as develop and produce the hardware for several high profile international customers with various world-renowned aftermarket diagnostic solutions.

Job function:

  • Develop and integrate new functions into existing user applications that interface with electronic devices and cloud servers
  • Research, understand and reverse-engineer automotive communication protocols
  • Develop product ideas into proof-of-concept implementations
  • Assist in efforts to improve re-usability of legacy source code for new projects
  • Maintain highly secure communication protocols and development practices to protect electronic devices from counterfeiting activities
  • Assist helpdesk operators in troubleshooting technical customer problems, doing root-cause analysis and implementing corrective actions
Minimum must-have requirements:
  • Minimum BEng or BSc degree with a solid background in Computer Science
  • Strong software development proficiency in C++ client application technologies
  • Strong proficiency in Object-Oriented Design principles and Test Driven Development
  • Excellent analytical and debugging skills
  • MSc or MSc.Eng degree or similar research-oriented experience
  • Broad experience in overall system design and implementation
  • Experience with C++ multi-threading and working with template classes
  • Good working knowledge of digital security technologies
  • Experience with CAN, KW2000 and UDS automotive diagnostic protocols
  • Experience using Javascript, CSS and HTML5 to build user interfaces
  • Experience working with a variety of serial communication protocols
  • Experience parsing and interpreting a variety of custom data formats
  • Experience with continuous integration and delivery systems
  • Experience with the wxWidgets UI framework
  • Experience with networking libraries like Curl, OpenSSL
  • Experience with USB libraries
  • Experience with Lua script
  • General familiarity with Windows PC and Mac OS X development environments
  • Good working knowledge of SQL databases
  • Experience in consuming web services in JSON
  • Experience working with RSA/AES encryption and cryptographic hashes
  • Fluency in one or more global languages such as German, Spanish, French and Chinese
  • Strong English verbal and written communication skills
  • Ability to work effectively in a team
  • Ability to take ownership of work with regard to requirements capture, software design, code implementation, documentation, testing, and communication
  • Adaptability to changing product requirements

Salary on offer:  Highly negotiable

Please apply with an updated MS Word CV to chantel@spencerrogers.co.za

(Please note that we experience high volumes of candidates responding to our advertised vacancies. This makes it impossible for us to reply to each applicant individually. Should you not hear from us within a week upon applying, please consider your application unsuccessful)