Embedded Systems Engineer | Firmware Engineer
khalil abu kwaik marketing- Posted 2 hours ago
- Be among the first 10 applicants
Job Description
Employment Type: Full-Time
Level: Mid-Level
We are looking for a highly skilled and detail-oriented Embedded Systems Engineer | Firmware Engineer to design, develop, test, and optimize embedded systems and firmware for next-generation products. The ideal candidate will have strong expertise in embedded software, microcontrollers, hardware interfaces, debugging, and system-level development.
Key Responsibilities• Design, develop, test, and maintain embedded firmware for electronic and connected products.
• Develop reliable and efficient firmware for microcontrollers, embedded processors, and hardware platforms.
• Write and optimize embedded software using C, C++, or other relevant programming languages.
• Work closely with hardware engineers to define system architecture and firmware requirements.
• Develop drivers and software components for sensors, peripherals, communication interfaces, and hardware modules.
• Integrate firmware with microcontrollers, processors, sensors, actuators, displays, and other electronic components.
• Implement communication protocols such as UART, SPI, I2C, CAN, USB, Ethernet, or similar interfaces.
• Develop real-time embedded applications using RTOS platforms where required.
• Configure and optimize low-level hardware and peripheral interfaces.
• Perform firmware debugging using oscilloscopes, logic analyzers, JTAG, debuggers, and other engineering tools.
• Investigate and resolve firmware defects, hardware-software integration issues, and system-level problems.
• Optimize firmware performance, memory usage, power consumption, boot time, and system reliability.
• Develop firmware architectures that support scalability, maintainability, and product longevity.
• Conduct unit testing, integration testing, system testing, and hardware-in-the-loop testing.
• Create and maintain automated test procedures for embedded software and hardware interfaces.
• Support prototype development, engineering validation, product qualification, and production testing.
• Analyze technical requirements and convert them into firmware specifications and development plans.
• Maintain source code using Git or other version-control systems.
• Participate in code reviews and ensure firmware follows established coding and engineering standards.
• Develop technical documentation covering firmware architecture, interfaces, configurations, testing, and troubleshooting procedures.
• Support firmware releases, version control, configuration management, and product deployment activities.
• Collaborate with manufacturing and quality teams to resolve production-related firmware and hardware issues.
• Evaluate new microcontrollers, development platforms, communication technologies, and embedded tools.
• Participate in root-cause analysis and corrective-action activities for product defects.
• Continuously improve firmware development processes, reliability, performance, and engineering practices.
Requirements• Diploma or Bachelor's degree in Electrical Engineering, Electronics Engineering, Computer Engineering, Computer Science, or a related discipline.
• Previous experience in embedded systems, firmware development, embedded software, or hardware-software integration.
• Strong programming skills in C and/or C++.
• Solid understanding of microcontrollers, processors, memory architecture, interrupts, timers, and embedded peripherals.
• Experience with embedded development environments, compilers, debuggers, and hardware development tools.
• Strong knowledge of communication protocols such as UART, SPI, I2C, CAN, USB, or Ethernet.
• Experience working with ARM Cortex-M or other common embedded processor architectures is an advantage.
• Familiarity with RTOS concepts such as tasks, scheduling, synchronization, queues, and interrupts.
• Strong understanding of embedded system architecture and hardware-software interfaces.
• Experience debugging embedded systems using JTAG, SWD, oscilloscopes, logic analyzers, or similar tools.
• Understanding of electronics, digital circuits, sensors, actuators, and basic hardware troubleshooting.
• Experience with Git or other source-control systems.
• Familiarity with automated testing, unit testing, integration testing, and hardware-in-the-loop testing.
• Strong troubleshooting, analytical, and problem-solving abilities.
• Ability to interpret schematics, datasheets, technical specifications, and hardware documentation.
• Strong attention to detail and commitment to software quality and reliability.
• Ability to work effectively with hardware, software, QA, manufacturing, and product teams.
• Strong documentation and technical communication skills.
• Ability to manage multiple development tasks and project deadlines.
• Experience with embedded Linux, bootloaders, device drivers, or wireless technologies is an advantage.
• Knowledge of functional safety, cybersecurity, or industry-specific embedded standards is a plus.
What We Offer• Competitive salary and comprehensive employee benefits.
• Opportunities to work on advanced embedded products and connected technologies.
• Exposure to microcontrollers, RTOS, embedded Linux, sensors, communication protocols, and hardware platforms.
• Professional training in embedded software, firmware architecture, debugging, and system design.
• Opportunities to participate in the complete product development lifecycle.
• Access to modern development, testing, debugging, and engineering tools.
• Supportive and collaborative engineering environment.
• Opportunities to work closely with hardware, software, manufacturing, and product development teams.
• Professional certification and technical learning opportunities.
• Career development opportunities in embedded systems, firmware, IoT, robotics, automotive, and electronics engineering.
• Opportunities to take ownership of technically challenging projects.
- • Performance recognition and long-term career advancement opportunities.
More Info
Key Skills
Hardware interfaces
JTAG debuggers
System-level development
Logic analyzers
ARM Cortex-M
Version-control systems
Bootloaders
