Firmware Engineer

Durban, KwaZulu-Natal, South Africa

Job Description


Summary

As Embedded Firmware Engineer you will deliver new secure applications for a variety of product variants. You will be responsible for design and development of new applications, enhancing existing applications, solving problems, and resolving defects. The Engineer will review requirements, develop the architecture and design of features (including the relevant documentation), develop application prototypes, participate in design and code reviews, and write code (including unit tests). The candidate must be able to become proficient on new task domains quickly, demonstrate technical excellence in his/her personal work as well as contribute to the team's continued success by sharing technical knowledge. An ideal candidate should have open mind set, be flexible, focused on quality and open to switching to different projects. Our culture is characterized by short decision paths, clear targets and team spirit. We work in multinational environment so fluent English in speaking and writing is a must.

Responsibilities

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 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

Desired Skills & Experience

5 years of hands-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 RTOS development (FreeRTOS or other) is preferred

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

Customer Expectations

Highlight knowledge, skills, abilities, and traits necessary in this role to satisfy our customer's expectations

Promote secure development and be able to work cooperatively and autonomously in a dynamic multi-cultural environment

Work Environment

The work environment characteristics described here are representative of those an employee encounters while performing the essential functions of this job. Reasonable accommodations may be made to enable individuals with disabilities to perform the essential functions.

Employee works primarily in an office environment, within a well-ventilated area, and is exposed to moderate noise levels.

Work Requirements

Travel and fieldwork including international travel may be required, therefore employee must possess or can acquire valid travel authorization.

We make it easier for people to get where they want to go!

On an average day, think of how many times you tap, twist, tag, push or swipe to get access, find information, connect with others or track something. HID technology is behind billions of interactions, in more than 100 countries. We help you create a verified, trusted identity that can get you where you need to go - without having to think about it.

When you join our HID team, you'll also be part of the ASSA ABLOY Group, the global leader in access solutions. You'll have 52,000 colleagues in more than 70 different countries. We empower our people to build their career around their aspirations and our ambitions - supporting them with regular feedback, training, and development opportunities. Our colleagues think broadly about where they can make the most impact, and we encourage them to grow their role locally, regionally, or even internationally. As we welcome new people on board, it's important to us to have diverse, inclusive teams, and we value different perspectives and experiences.

#LI-HIDGlobal

Durban, KwaZulu-Natal, ZA, 3610

Production & Skilled Trades

0-10%

Mid-senior level

31-Jul-2023

Assa Abloy

Beware of fraud agents! do not pay money to get a job

MNCJobs.co.za will not be responsible for any payment made to a third-party. All Terms of Use are applicable.


Related Jobs

Job Detail

  • Job Id
    JD1247624
  • Industry
    Not mentioned
  • Total Positions
    1
  • Job Type:
    Full Time
  • Salary:
    Not mentioned
  • Employment Status
    Permanent
  • Job Location
    Durban, KwaZulu-Natal, South Africa
  • Education
    Not mentioned