EDGE Group PJSC

Principal Engineer - Embedded Software (E&E)

EDGE Group PJSC · Abu Dhabi, Abu Dhabi Emirate, United Arab Emirates

Defense and Space Manufacturing · 501-1,000 employees

19 h ago
Principal (10+ yrs) Full-time United Arab Emirates
Log in to apply, save this posting, or score it against your profile with AI.

About the role

Architect and design complex embedded systems while leading and mentoring junior engineers. Develop and maintain firmware for microcontrollers and implement Linux drivers for custom hardware components.

What they look for

Embedded Software Engineering C C++ Linux Kernel Development Firmware Development RTOS ARM64 Cortex-M NVIDIA JetPack SDK CUDA TensorRT V4L2 GStreamer FFmpeg Communication Protocols Debugging

Requirements

Requires a Bachelor's or Master's degree in computer science, electronic, or software engineering. Candidates must have 15+ years of experience in embedded software engineering with expertise in C, C++, and Linux kernel development.

Full description

External Job Description

ADVANCED CONCEPTS is an entity within EDGE dedicated to the design and deployment of advanced, innovative technologies. ADVANCED CONCEPTS is fast-tracking the development of high-technology autonomous systems, including three Medium Endurance, High Altitude, fixed-wing unmanned aerial systems, a family of precision loitering munitions, a cost- effective family of cruise missiles, and a range of guided artillery munitions.

Core Accountabilities:

  • Architect and design complex embedded systems, considering real-time constraints, power consumption, and resource limitations.
  • Develop and maintain bare-metal firmware for microcontrollers based on Cortex-M architectures, such as STM32, NXP LPC, and Microchip PIC families.
  • Develop and maintain firmware with RTOS like FreeRTOS, mbed, or ThreadX on microcontrollers
  • Implement Linux drivers and kernel modules for custom hardware components.
  • Familiar with debug process in Linux(gdb) and in microcontrollers (st-link, segger J-link)
  • Develop user-space applications leveraging APIs like V4L2, GStreamer, and FFmpeg for multimedia processing and image/video capture.
  • Optimize software solutions using Jetson Linux BSP and NVIDIA JetPack SDK components (Linux kernel, CUDA, cuDNN, TensorRT).
  • Integrate various communication protocols like I2C, UART, SPI, and CAN in both Linux and microcontroller environments.
  • Implement Linux client/Server against UDP, TCP or IP.
  • Participate in code reviews, ensure code quality, and follow established coding standards.
  • Lead and mentor junior engineers, foster a collaborative environment, and share knowledge.
  • Stay up-to-date with advancements in embedded technologies and best practices.
  • Use of version controlled environment such as Git or SVN
  • CI/CD pipeline
  • Code writing discipline such as commenting and bug tracking
  • Excellent problem-solving, analytical, and debugging skills.
  • Strong communication and interpersonal skills, with the ability to collaborate effectively with engineers and other stakeholders.
  • Proven ability to work independently and manage multiple projects simultaneously.
  • Conduct testing and troubleshooting using oscilloscopes, logic analyzers.

Qualification / Experience

  • Bachelors or Master’s degree in computer science, electronic or software engineering
  • 15+ years of experience in embedded software engineering, C and C++.
  • Strong understanding of ARM64 and Cortex-M architectures.
  • Expertise in Linux driver and kernel development.
  • Experience with bare-metal firmware development for microcontrollers like STM32, NXP LPC, and Microchip PIC families.
  • Experience with RTOS like FreeRTOS, mbed, or ThreadX on microcontrollers
  • Knowledge of I2C, UART, SPI, and CAN protocols and their implementation in both Linux and microcontrollers.
  • Experience with Jetson Linux BSP and NVIDIA JetPack SDK, including Linux kernel, CUDA, cuDNN, and TensorRT.
  • Familiarity with V4L2, GStreamer, and FFmpeg.
  • Excellent problem-solving, analytical, and debugging skills.
  • Strong communication and interpersonal skills, with the ability to collaborate effectively with engineers and other stakeholders.
  • Proven ability to work independently and manage multiple projects simultaneously.
  • Linux kernel and driver implementation
  • C and C++ coding
  • Firmware in microcontrollers
  • Nvidia Jetson Linux BSP