We are seeking a highly motivated and skilled Embedded Systems Engineer to join our dynamic engineering team. In this role, you will be responsible for the end-to-end development of firmware and low-level software for our next-generation ARM-based embedded products running on the Linux operating system. You will play a critical part in designing, implementing, testing, and optimizing the software that brings our hardware to life.
Key Responsibilities:
Design, develop, debug, and maintain embedded firmware and software in C/C++ for ARM-based processors.
+ Port, configure, and build custom Linux distributions (using Yocto Project or Buildroot) for new hardware platforms.
+ Develop and optimize Linux kernel drivers, device trees (DTS), and board support packages (BSP) for peripherals such as I2C, SPI, UART, USB, Ethernet, and MMC/SD.
+ Implement and debug system-level software, including bootloaders (U-Boot), kernel initialization, and power management.
+ Collaborate with hardware engineers during the board bring-up and validation phase for new PCBAs.
+ Write clean, well-documented, and maintainable code following best practices.
+ Perform system-level debugging using oscilloscopes, logic analyzers, JTAG/SWD debuggers, and kernel debugging tools.
+ Create and execute unit tests, integration tests, and validation plans to ensure software quality and reliability.
+ Work closely with applications software teams to define hardware-software interfaces and system architecture.
+ Participate in code and design reviews to ensure high-quality outcomes.
Required Qualifications & Skills:
+ Bachelor's or Master's degree in Computer Engineering, Electrical Engineering, or a related field.
+ 3+ years of professional experience in embedded firmware/software development.
+
Strong proficiency in C programming
for constrained, resource-embedded environments.
+
Hands-on experience with ARM Cortex-A/M series architectures
and their development ecosystems.
+
Proven experience with embedded Linux:
kernel configuration, driver development, and device tree.
+ Solid understanding of hardware fundamentals and the ability to read electronic schematics and datasheets.
+ Experience with low-level communication protocols (e.g., I2C, SPI, UART).
+ Familiarity with version control systems, preferably Git.
+ Excellent problem-solving and debugging skills.
Preferred Qualifications (Nice-to-Have):
+ Experience with system build tools like the
Yocto Project
or
Buildroot
.
+ Knowledge of bootloader customization, specifically
U-Boot
.
+ Proficiency in
Python or Shell scripting
for automation and testing.
+ Experience with real-time operating systems (RTOS) like FreeRTOS or Zephyr, in addition to Linux.
+ Understanding of security principles in embedded systems (secure boot, trusted execution environment).
+ Experience with wireless technologies (Wi-Fi, Bluetooth, LTE).
+ Knowledge of agile development methodologies.
5 day week @ AMK Area
Maestro HR
damien lee tian hong
R1106726
16C8462
Beware of fraud agents! do not pay money to get a job
MNCJobz.com will not be responsible for any payment made to a third-party. All Terms of Use are applicable.