HamburgerMenu
hirist

System Software Verification Engineer

Posted on: 27/10/2025

Job Description

Description :

Job Summary :

We are seeking a highly skilled System Software Verification Engineer with strong expertise in Embedded Firmware, Linux Kernel, and Driver Testing. The ideal candidate will have hands-on experience in board bring-up, test automation, and debugging of embedded software components across pre-silicon and post-silicon environments.

Key Responsibilities :

- Perform board bring-up activities for software components such as bootloader, platform managers, Linux Kernel, Linux drivers, Baremetal drivers, and applications on ARM-based boards.

- Conduct verification and testing of Linux Kernel and Drivers including I2C, Flash, USB, Ethernet, PCIe, DDR memory tests, etc.

- Develop and execute test plans to evaluate functionality, security, and performance of firmware using emulation and evaluation boards.

- Analyze, track, and debug test failures; collaborate with development teams to identify root causes and implement corrective actions.

- Execute regression tests, triage issues, log defects, and ensure timely closure in collaboration with developers.

- Automate functional and system-level tests using Python, integrate with the existing test automation framework (Pytest/Jenkins), and maintain test artifacts.

Essential Skills :

- Strong experience in verification and testing of Linux-based Embedded System Software.

- Hands-on experience with Linux Device Driver verification and validation on Linux, Baremetal, or RTOS platforms.

- Proficiency in compiling, cross-compiling, building, debugging, and deploying Bootloader, TF-A, Linux Kernel, Device Tree, Middleware, and BareMetal applications using JTAG debuggers & emulators.

- Good understanding of SoC architectures such as ARM, RISC-V, or x86, including MMU, interrupt handling, and cache systems.

- Practical experience with peripherals/controllers such as UART, I2C, SPI, USB, SD, eMMC, QSPI, PCIe, etc.

- Ability to design, define, and develop manual and automated test cases for embedded systems.

- Programming proficiency in C/C++, and scripting with Python, Shell, or Tcl.

- Working experience with GIT, Pytest, and Jenkins for test automation.

Good to Have :

- Exposure to FPGA design tools such as Vivado, Vitis.

- Familiarity with configuration management tools like Perforce, JIRA, Confluence, and GIT workflows.

- Understanding of embedded hardware and debugging tools for bring-up and validation.


info-icon

Did you find something suspicious?