Required Skills • Strong experience in Embedded C/C++ programming. • Hands-on experience with FreeRTOS development. • Strong experience in Embedded Linux system development. • Experience in Bare Metal firmware development. • BSP development and customization experience. • Experience in board bring-up and hardware debugging. • Device driver development for embedded peripherals. • Strong understanding of ARM Cortex-A/R/M or similar processor architectures. • Experience with IPC mechanisms: Message Queues, Shared Memory, Semaphores, Pipes, and Socket-based Communication. • Strong knowledge of TCP/IP, UDP, HTTP/HTTPS, MQTT, SNMP, and SSH/TLS. • Linux kernel fundamentals, Device Tree concepts, boot sequence, and startup architecture. • Strong debugging skills using GDB, JTAG Debuggers, Lauterbach/Trace32, Wireshark, Logic Analyzers, and Oscilloscopes. • Experience with Git and version control systems. Preferred Skills • Experience with FreeRtos BSP development. • Knowledge of AMP/SMP architectures. • Experience with secure boot and embedded security concepts. • Familiarity with IoT protocols such as BLE, Zigbee, Thread, Matter, and Wi-Fi. • Exposure to cloud-connected IoT devices and edge computing. • Experience with CI/CD and automated build systems. • Understanding of cybersecurity concepts for connected products. Key Responsibilities • Develop and maintain embedded software solutions on FreeRtos, Embedded Linux, and Bare Metal platforms. • Perform BSP development and customization for new hardware platforms. • Lead and support board bring-up activities, including bootloader, kernel, device drivers, and hardware validation. • Develop and integrate device drivers for UART, SPI, I2C, Ethernet, USB, GPIO, ADC, PWM, and PCIe peripherals. • Design and implement IPC mechanisms, message queues, shared memory, semaphores, sockets, and synchronization primitives. • Work on real-time applications with deterministic performance requirements. • Develop and optimize embedded applications using C/C++. • Configure and customize bootloaders (U-Boot or equivalent). • Debug hardware-software integration issues during platform bring-up and product development. • Analyze and optimize system performance, memory utilization, boot time, and CPU utilization. • Collaborate with hardware, firmware, validation, and system teams throughout the product lifecycle. • Participate in architecture reviews, code reviews, and technical design discussions. • Support product validation, deployment, and field issue analysis. Education Bachelor’s or Master’s degree in Electronics, Embedded Systems, Computer Science, Electrical Engineering, or related field. Domain IoT Devices / Smart Home Solutions / Building Automation / Connected Products / Embedded Systems
Embedded Software Senior Lead Engineer
Emerson
Embedded Software Lead Engineer
Emerson
Software Engineer (Java Developer)
Maropost
IT Testing Engineer II
Conduent
Sr Software Engineer (Mainframe / COBOL)
ACI Worldwide Job Opportunities
Senior Flutter Developer
Legrand Group Opportunities - Join us