Software Engineer
microTECH Global LTD · United Kingdom ·
- Category
- Software engineering
- Salary
- GBP 65,000 – 105,000 / year
Builds and maintains a reproducible hardware emulation environment for a semiconductor client: booting PetaLinux images in AMD's QEMU fork, bridging QEMU with RTL simulators via TLM, all wrapped in Docker for GitLab/Jenkins CI/CD. Day to day is Python test automation and embedded Linux work. Requires QEMU, Docker, Python, and Linux internals expertise.
Salary: £65,000 - 105,000 per year
Requirements:
- Proven commercial experience with QEMU, specifically configuring and networking emulated ARM Cortex-A53/R5 cores, and RTL simulators
- Strong proficiency in Docker for standardizing complex toolchain environments, including injecting Vitis Core Development Kits and PetaLinux
- Advanced Python programming for orchestrating tests, hardware interactions, and CI/CD automation
- Strong understanding of Linux OS internals, memory-mapped I/O, and driver-stack loading in embedded environments
Responsibilities:
- Design and maintain a reproducible hardware emulation environment utilizing PetaLinux toolchains
- Wrap the entire emulation stack in Docker to ensure environmental consistency across developer workstations and automated CI/CD pipelines (GitLab/Jenkins)
- Utilize the AMD fork of QEMU to boot functional PetaLinux images, modeling specific peripherals, boot sequences, and memory maps
- Bridge QEMU (PS) with RTL simulators like Vivado XSIM (PL) via Remote Port / Transaction Level Modeling (TLM) to validate custom logic alongside the software stack
- Develop robust testbenches and automation scripts using Python, leveraging XRT bindings or PYNQ, to load hardware overlays, inject test vectors into emulated hardware, and assert correctness
Technologies:
- ARM
- CI/CD
- Docker
- Embedded
- GitLab
- Hardware
- Jenkins
- Linux
- Python
- QEMU
More:
Our client is an international semiconductor company.
last updated 40 week of 2026