Main Purpose of the Job
Electronic Engineer with expertise in embedded systems programming to join our dynamic team. The ideal candidate will have a strong background in electronics design and development, and embedded software engineering. This role involves designing, developing, and optimizing firmware and hardware solutions for cutting-edge projects in electronics.
Education, Experience And Competencies
- Bachelor’s degree in Electronics Engineering, Electrical Engineering.
- Minimum of 3 years' experience in electronic hardware and embedded firmware development.
- Proficiency with RTOS and Linux-based embedded systems.
- Proficiency in C/C++ and assembly for embedded programming.
- Strong knowledge of microcontroller families (ARM Cortex, Microchip ,and STM32 essential).
- Familiarity with PCB design tools (e.g., Altium, KiCad, Eagle) and electronic simulation tools.
- Familiarity with communication protocols such (SPI, I2C, UART, CAN, RS485 and Ethernet).
- Experience with SDLC and Agile methodologies.
- Experience using oscilloscopes, logic analyzers, and other debugging tools.
- Experience with version control tools like Git.
- Proven experience working with embedded development on electronic systems using industry best practices.
Responsibilities
- Act as the main point of contact for product inquiries from internal teams and customers.
- Design, program, and debug embedded systems, including microcontrollers, real-time operating systems (RTOS), and peripheral integration.
- Collaborate on the design and testing of electronic circuits, PCBs, and prototyping for various applications.
- Write and optimize MCU level firmware to ensure seamless hardware-software integration (Bootloaders, Hardware Abstraction, Device trees, Libraries, OTA etc.).
- Work closely with cross-functional teams, including product designers, mechanical and hardware engineers, to deliver high quality solutions.
- Perform rigorous testing of firmware to ensure reliability, performance, and compliance with industry standards.
- Troubleshoot complex issues in hardware and software during development and after deployment.
- Create and maintain technical documentation including specifications, schematics, and user manuals.
- Draft, review, update and approve all required documentation for ISO, ISERT, MASC and SANS certification
- Support and maintain the development technical files.
- Complete Risk Assessment for designed firmware.