Studio 29

C++ Software Engineer

  • Location Somerset West, Western Cape
  • Category Software Engineer
  • Job Type Permanent
  • Salary Market Related +
  • Ref # 5170

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