Senior Hardware Abstraction Layer Specialist
منذ 2 أيام
Fujairah, الإمارات العربية المتحدة
KIRIN NOVA REAL ESTATE L.L.C S.O.C
دوام كامل
مجانًا عبر البريد الإلكتروني أو Google
احفظ هذه الوظيفة وحافظ على تنظيم بحثك
قم بإنشاء حساب مجاني لحفظ الوظائف وإنشاء التنبيهات والعودة إلى هذه القائمة من لوحة التحكم الخاصة بك.
مجانًا عبر البريد الإلكتروني أو Google
بالمتابعة، فإنك توافق على الشروط & سياسة الخصوصية.
Job Title: Senior Hardware Abstraction Layer SpecialistLocation: United Arab Emirates (Remote)Employment Type: Full-TimeWork Arrangement: 100% Remote — Work From HomeAbout the RoleWe are seeking an experienced Senior Hardware Abstraction Layer Specialist to design, develop, and maintain hardware abstraction layers (HALs) that enable reliable communication between software applications, operating systems, and hardware components. The successful candidate will develop reusable hardware interfaces, improve platform portability, optimize low-level performance, and support efficient integration across embedded devices and processor architectures.
Key Responsibilities
Design and develop hardware abstraction layers for embedded systems, microcontrollers, and processor-based platforms. Implement reusable interfaces for hardware peripherals, including GPIO, UART, SPI, I2C, timers, DMA, and interrupt controllers. Develop and maintain device drivers and low-level software components that interface with hardware registers and peripherals. Collaborate with hardware engineers, firmware developers, and operating system specialists to ensure seamless hardware-software integration. Optimize HAL performance, memory usage, execution efficiency, and resource management. Support hardware portability across different microcontroller families, processor architectures, and board configurations. Troubleshoot hardware initialization failures, peripheral communication problems, timing issues, and device compatibility defects. Integrate HAL components with real-time operating systems, embedded Linux, bootloaders, and board support packages. Develop unit tests, hardware-in-the-loop tests, and diagnostic utilities to validate hardware interface reliability. Review hardware specifications, schematics, and datasheets to implement accurate low-level interfaces. Maintain technical documentation, coding standards, interface specifications, and hardware compatibility records. Qualifications and ExperienceBachelor's degree in Electrical Engineering, Electronics Engineering, Computer Engineering, or Computer Science. At least 5–8 years of experience in embedded software, firmware development, device drivers, or low-level systems engineering. Strong proficiency in C and C++, with experience in register-level programming and memory-mapped peripherals. Practical experience developing HALs, board support packages, or device drivers for embedded platforms. Knowledge of ARM Cortex-M, ARM Cortex-A, or comparable processor architectures. Understanding of interrupt handling, DMA, memory management, clock configuration, power management, and peripheral initialization. Experience with embedded operating systems such as FreeRTOS, Zephyr, or embedded Linux. Familiarity with debugging tools, JTAG/SWD interfaces, oscilloscopes, and logic analyzers. Knowledge of communication protocols such as UART, SPI, I2C, CAN, and USB.
Experience with Git, build systems, automated testing, and embedded software development workflows. Strong analytical, debugging, documentation, and problem-solving skills. Ability to work independently and coordinate effectively with distributed engineering teams.
What We Offer
Competitive compensation based on qualifications and professional experience. A 100% remote working arrangement with flexible coordination across distributed teams. Opportunities to develop reusable embedded software components for diverse hardware platforms. A collaborative environment focused on technical innovation, engineering quality, and continuous learning.
Key Responsibilities
Design and develop hardware abstraction layers for embedded systems, microcontrollers, and processor-based platforms. Implement reusable interfaces for hardware peripherals, including GPIO, UART, SPI, I2C, timers, DMA, and interrupt controllers. Develop and maintain device drivers and low-level software components that interface with hardware registers and peripherals. Collaborate with hardware engineers, firmware developers, and operating system specialists to ensure seamless hardware-software integration. Optimize HAL performance, memory usage, execution efficiency, and resource management. Support hardware portability across different microcontroller families, processor architectures, and board configurations. Troubleshoot hardware initialization failures, peripheral communication problems, timing issues, and device compatibility defects. Integrate HAL components with real-time operating systems, embedded Linux, bootloaders, and board support packages. Develop unit tests, hardware-in-the-loop tests, and diagnostic utilities to validate hardware interface reliability. Review hardware specifications, schematics, and datasheets to implement accurate low-level interfaces. Maintain technical documentation, coding standards, interface specifications, and hardware compatibility records. Qualifications and ExperienceBachelor's degree in Electrical Engineering, Electronics Engineering, Computer Engineering, or Computer Science. At least 5–8 years of experience in embedded software, firmware development, device drivers, or low-level systems engineering. Strong proficiency in C and C++, with experience in register-level programming and memory-mapped peripherals. Practical experience developing HALs, board support packages, or device drivers for embedded platforms. Knowledge of ARM Cortex-M, ARM Cortex-A, or comparable processor architectures. Understanding of interrupt handling, DMA, memory management, clock configuration, power management, and peripheral initialization. Experience with embedded operating systems such as FreeRTOS, Zephyr, or embedded Linux. Familiarity with debugging tools, JTAG/SWD interfaces, oscilloscopes, and logic analyzers. Knowledge of communication protocols such as UART, SPI, I2C, CAN, and USB.
Experience with Git, build systems, automated testing, and embedded software development workflows. Strong analytical, debugging, documentation, and problem-solving skills. Ability to work independently and coordinate effectively with distributed engineering teams.
What We Offer
Competitive compensation based on qualifications and professional experience. A 100% remote working arrangement with flexible coordination across distributed teams. Opportunities to develop reusable embedded software components for diverse hardware platforms. A collaborative environment focused on technical innovation, engineering quality, and continuous learning.