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.(ref : hirist.tech)