Jacques Pienaar is a software engineer with 13 years of experience specializing in compilers for machine learning and accelerator backends, and has been an early engineer on XLA/TPU at Google. He combines deep compiler infrastructure expertise—contributions across MLIR, LLVM/Clang, XLA, IREE, and TensorFlow—with practical runtime and build-system work that improves code generation, attribute handling, and bytecode workflows. His open-source record shows a knack for low-level, high-impact fixes and features (e.g., MLIR builder generation, InferTypeOpInterface support, CUDA/Clang device-call fixes, and outfeed/infeed support in XLA). Based in Campbell, CA, he pairs a PhD in computer engineering with production-scale engineering at Google, able to move research ideas into robust compiler implementations. A subtle strength is his focus on reducing unnecessary allocations and automating boilerplate—small changes that cascade into measurable runtime and maintenance improvements.
13 years of coding experience
5 years of employment as a software developer
Bachelor of Applied Science (B.Sc.), Mathematics and Applied Mathematics, Bachelor of Applied Science (B.Sc.), Mathematics and Applied Mathematics at North-West University/Noordwes-Universiteit
Doctor of Philosophy (Ph.D.), Computer Engineering, Doctor of Philosophy (Ph.D.), Computer Engineering at Purdue University
A machine learning compiler for GPUs, CPUs, and ML accelerators
Role in this project:
Back-end Developer
Contributions:66 commits, 2 PRs, 3 comments in 6 years 1 month
Contributions summary:Jacques primarily contributed to the XLA (XLA) project by modifying core backend code, specifically related to device reset functionality, outfeed, and infeed support. They implemented new features such as basic outfeed support and the ability to transfer data to the infeed. Their work also included refactoring existing code and adding tests related to reduce operations. These changes involved modifications across multiple files, indicating a significant contribution to the project's core functionality.
The LLVM Project is a collection of modular and reusable compiler and toolchain technologies.
Role in this project:
Back-end Developer
Contributions:319 reviews, 87 PRs, 409 pushes in 5 years 3 months
Contributions summary:Jacques primarily focused on enhancing the MLIR compiler infrastructure. Their contributions involved modifications to the TableGen tool for pattern generation, enabling features like variadic result patterns, and improving code generation for builder methods and property handling within the MLIR framework. They also addressed bugs related to thread-local caches and bytecode reader/writer interfaces. Additionally, the user added capabilities to the PDL (Pattern Definition Language) system and implemented tests related to ranked tensor types.
compilerstechnologiesclangsubmittoolchain
Find and Hire Top DevelopersWe’ve analyzed the programming source code of over 60 million software developers on GitHub and scored them by 50,000 skills. Sign-up on Prog,AI to search for software developers.