An Amazing Career Opportunity for Senior Embedded Software Engineer
Location: Durban, South Africa
Job ID: 32807
Profile Summary:
As Senior Embedded Software 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.
Role & 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 driver (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.
Why apply?
- Empowerment: You’ll work as part of a global team in a flexible work environment, learning and enhancing your expertise. We welcome an opportunity to meet you and learn about your unique talents, skills, and experiences. You don’t need to check all the boxes. If you have most of the skills and experience, we want you to apply.
- Innovation: You embrace challenges and want to drive change. We are open to ideas, including flexible work arrangements, job sharing or part-time job seekers.
- Integrity: You are results-orientated, reliable, and straightforward and value being treated accordingly. We want all our employees to be themselves, to feel appreciated and accepted.
This opportunity may be open to flexible working arrangements.
HID is an Equal Opportunity/Affirmative Action Employer – Minority/Female/Disability/Veteran/Gender Identity/Sexual Orientation.