Description
FSR is AMD's upscaling, frame generation and denoising technology, integrated in hundreds of games.
On the FSR team I work on the SDK's foundations: build infrastructure and toolchain, shader compiler performance, portability, and hardening of the codebase.
Information
Duration: December 2025 - present
Role: Software Engineer, FSR team
Skills: C++, HLSL, Python, DXIL/SPIR-V, shader toolchains, build systems
Tools: Visual Studio, VS Code, ninja, clang/clang-cl, AddressSanitizer, PIX, RGP, Git
Team members: AMD FSR team
Contributions
• Modernized the SDK's build infrastructure across all FSR components (upscaler, frame generation, denoiser)
• Ported the build scripts from batch to Python for portability
• Added ninja and VS Code support; implemented clang/clang-cl builds
• Implemented AddressSanitizer builds to catch memory and ABI issues early
• Fixed build dependency tracking so shaders and sources rebuild when scripts, includes or generated headers change
• Sped up shader compilation ~2x on average in one module, across DXIL and SPIR-V
• Reworked hex-in-header shader embedding into resource-linked binaries, cutting incremental build times 2-5x in one module
• R&D on unifying duplicate shader code (push constants, globals, link-time constants/flags) to cut compile time and binary size
• Implemented GPU crash breadcrumbs; helped debug and implement a driver fix
• Found and fixed latent issues such as misaligned memory loads
Description
Lumion is a widely-used real-time architectural visualization tool. At Lumion (Act-3D), I contributed to modernizing its legacy Effects11 rasterizer into a pathtracer using DirectX 12 Raytracing.
My work focused on raytracing integration, porting, GPU performance & debugging tools, shader tooling, and R&D features.
Information
Duration: September 2019 - October 2025
Role: Intern → Junior → Senior Graphics Programmer
Skills: C++, HLSL, DirectX12, DXR, Shader/GPU tooling
Tools: Visual Studio, PIX, NSight, Git, CMake, Jira, RenderDoc
Team members: Act-3D graphics and engine teams
Contributions
• Integrated DXR 1.1: BLAS/TLAS, SBT, inline RT, and RT collections
• Unified raster + raytracing: bindless rendering, V-Buffer, and instance management
• Implemented denoising: NRD (ReLAX, ReBLUR, Sigma), OIDN/OIDN2
• Developed features: raytraced water, grass, glass, shadows, GI, and fake caustics
• Prototyped GPU kD-tree building (photon mapping/caustics), advanced RT grass, and RT characters
• Created shader tooling: SM4/5 to SM6+ HLSL migration, reflection, and shader includes
• Improved offline + runtime shader pipelines with multi-threading and shader variants
• Tooling: (debug/perf) markers, crash diagnostics, memory allocations exporter
• Open-source contributions: DXC, HlslTools, DirectX-Headers
Trailers
Watch official Lumion 2024 trailer
– © Act-3D B.V.
Features I contributed to in this version include
(real-time) denoising, RT glass, and fake caustics.
Watch official Lumion 2023 trailer
– © Act-3D B.V.
Features I contributed to in this version include reflections, shadows, and GI.
Description
Wisp was a real-time raytracing library that could've been integrated into your favorite engine or tool, made by a team of nine students.
It was used in a Maya extension that allowed you to view a deferred, full raytracing, hybrid and path traced preview of the current scene.
The goal of the project was to allow artists to have a quick overview of what their end-product would look like; saving time and improving their workflow.
Maya didn't provide that in the regular viewport, so the deferred preview was a step up to view the effects of modeling real-time.
Previewing the reflections, global illumination and shadows is a nice bonus for RTX and GTX Pascal cards.
Information
Duration: October 2018 - December 2019
Role: Graphics/Optimization programmer
Skills: C++, HLSL, DirectX12, DXR, Raytracing
Tools: GitHub/Git, Sourcetree, CMake, Visual Studio, Jira, PIX, Nsight
Team members: 8 graphics programmers, 1 engine programmer
Contributions
• Raytraced reflections
• Variable roughness; filtering reflections (spatial reconstruction)
• Optimizations, refactoring and bug fixing
• Frustum culling
• Basic deferred rendering
• Scene graph parenting