Firmware Engineer (Ref: SMFE)
Remuneration: RMarket Related

Position in the Engineering sector in Johannesburg - Gauteng
Posted On Tuesday 30 April 2019
Job Description:
  • Design and implementation of new secure embedded firmware applications in C, C++, and Python
  •  Develop low level interfaces (GPIO, UART, I2C, SPI)
  • Review and maintain existing code base
  •  Support in the design and development of desktop engineering tools
  • Develop test fixtures in C, C++, Python, and higher level Object-Oriented language (e.g. C#)
  • Documentation and cross functional training of low level concepts
  • Consult with other engineers to evaluate interfaces between hardware & embedded solutions and operational & performance requirements of the overall system.
  • Prepare, present, and participate in technical discussions and code reviews
  • Contribute to the continued development of processes to improve the efficiency and quality of development projects, assist in the formulating standards and development practices to improve our development processes.
  • Investigate and analyze reported defects to resolve them in a timely manner
  • Proactively provide status, raise issues, and communicate necessary information to appropriate team members on a regular basis.

  • Minimum of Bachelor's Degree in Computer Science, or Electrical Engineering
  • Minimum of 5 years of hands-on embedded development experience
  • 5 years of hand-on code development
  • Applied experience with C , C++, Python, and .NET
  • Comfortable working at a hardware level drivers (GPIO, UART, I2C, SPI)
  • Familiarity with bug tracking tools (Bugzilla, Jira)
  • Working knowledge of source code management and configuration
  • General knowledge of test frameworks and automated build systems (e.g. Jenkins, NUnit, NAnt)
  • Ability to complete design related tasks with minimal supervision
  • Basic understanding of development processes, principles and objectives
  • Some exposure of development through the entire life-cycle including design, architecture, and implementation
  • Analytical, planning, problem solving and decision-making skills
  • Excellent organizational and time management skills
  • Experience with Secure Elements, RFID, NFC, HCE or Bluetooth technologies is a plus
  • Experience with Agile Scrum development a plus
  • Experience with Keil Development Environment is a plus
  • Experience with Linux development is a plus
  • Ability to effectively use and operate oscilloscopes, analyzers, power supplies, etc. is a plus
A Consultant will be in touch if you are shortlisted for the position.  Please consider your application unsuccessful should you not have been contacted within 2 weeks.  We will keep your CV on our database and contact you should you match the criteria of any other vacancies
Please contact Sian Morgan