CI/CD for Embedded Systems: Deep experience with CI/CD pipelines for embedded Linux (e.g., Yocto-based systems), including cross-compilation, kernel modules, and bootloader integration. Proven ability to ensure reproducibility and traceability in build workflows.
Bare-Metal Build Automation: Experience automating build and test workflows for microcontroller-based systems (e.g., ARM Cortex-M, TI), with familiarity in cross-compilation toolchains, linker scripts, and memory layout management.
Secure Code Signing: Hands-on experience integrating code signing processes using Hardware Security Modules (HSMs) within automated pipelines.
Hardware-Oriented Test Automation: Ability to automate firmware flashing, board resets, serial/UART communication, and test result collection on real hardware platforms.
Test Framework Integration: Experience integrating unit, integration, and system-level tests into CI pipelines using frameworks such as PyTest, Robot Framework, or custom test harnesses.
Scripting & Tooling: Strong Python and shell scripting skills for automating build, test, provisioning, and reporting tasks. Ability to write maintainable, modular scripts for log parsing and orchestration.
CI Infrastructure & Containerization: Proficient in Jenkins, GitLab CI, or similar tools. Capable of designing scalable, modular pipelines. Experience using Docker to encapsulate build and test environments for consistency across teams.
Desirable skills
Familiarity with container orchestration tools like Kubernetes for managing scalable test environments.
Understanding of security testing principles and ability to integrate tools like Nessus or Qualys into CI pipelines.
Experience with performance testing using tools like JMeter or Locust, especially with Python-based test scripting.
Exposure to cloud platforms (AWS, Azure, GCP) for CI/CD, remote testing, or infrastructure scaling.