The role combines low-level systems programming with open source collaboration. You will work alongside experienced graphics engineers, develop genuine expertise in how modern GPUs work from the kernel up, and grow into a contributor that the broader open source graphics community knows by name.
Location: Fully remote
Travel: Optional conference attendance
What we’re looking for
Required
- Vulkan - solid understanding of the core spec; command buffers, render passes, synchronisation, memory management and pipelines. Familiarity with Vulkan validation layers and debugging workflow
- Basic understanding of GPU hardware concepts - queues, tilers vs IMR, memory hierarchies
- Linux kernel basics - comfortable reading and navigating kernel code
- DRM fundamentals - GEM/buffer management, dma-buf/prime buffer sharing, fence and sync objects, GPU job submission paths
- Mesa architecture awareness - Gallium, driver structure
- Basic understanding of how userspace drivers interact with kernel
- C and C++ - comfortable with pointer arithmetic, memory management, kernel-style coding
Nice to have
- Git - mailing list patch workflow (not just GitHub PRs)
- Comfortable reading specs and documentation independently
- Not afraid of large unfamiliar codebases
- Open source contribution mindset - code review, public communication, upstream first
- Existing Mesa or kernel patch history
- Experience with a specific GPU family (ARM/AMD/Intel)
- Python for tooling/scripting
- Rust programming skills
- Understanding of KMS fundamentals or Wayland clients