Below is a concise, albeit enriched with many images version of my résumé.
The full version is in this PDF file. This one is devoid of images.
My LinkedIn profile also acts as my résumé.
Experience
Video games that I have been credited in (as per my MobyGames profile):






Work History
Principal Engine Programmer at Flying Wild Hog, Warsaw, Poland, 06/2023 – Present
Senior R&D Programmer at id Software, Warsaw, Poland, 05/2019 – 12/2022 (3 years 8 months)
Unity VR Developer at Saxo Bank, Warsaw, Poland, 08/2018 – 05/2019 (10 months)
R&D Programmer at Emerge Consulting, Warsaw, Poland, 10/2016 – 08/2018 (1 year 11 months)
Graphics Programmer at CD PROJEKT RED, Warsaw, Poland, 03/2016 – 10/2016 (8 months)
Engine Programmer at Flying Wild Hog, Warsaw, Poland, 09/2013 – 02/2015 (1 year 6 months)
Shader Programmer at Madman Theory Games, Wrocław, Poland, 02/2012 – 08/2013 (1 year 7 months)
DevTech Engineer Intern at NVIDIA Europe, London, UK, 05/2011 – 07/2011 (3 months)
Intern at Techland, Wrocław, Poland, 10/2009 – 11/2009 (2 months)
Personal Projects
- MaxestFramework – My own framework on which I try things (mostly rendering-related).
Components: essentials, system, math, net, image, mesh, gpu (D3D11). Demos/samples: SSAO, depth of field, antialiasing, soft shadows, software ray tracer, Fourier transform.







- Unity 3D Engine Plugins – Plugins which I developed or co-developed for Unity 3D engine.
- WSyncer – A command-line program for syncing files between folders. Written in C#. I use it for backing up all my files.
- Street Arena (Windows / Linux / MacOS) – A GTA2 remake built on a custom engine, all implemented from scratch, in a 2-person programming team.




- Hop3D (web) – Flappy Bird reimagined in proper 3D.
- Deferred Lighting on Android – A demo implementing deferred lighting running on Android. The demo renders 18 small- to-medium lights on Tegra 3 reaching 21 FPS at 850×480 pixels.
- Vainmoinen – A software rasterizer that can optionally be accelerated by CUDA technology. My bachelor thesis project which unexpectedly landed me an internship at NVIDIA Europe. The accompanying thesis discusses in detail how to implement the very core of what modern graphics APIs like OpenGL or Direct3D provide out of the box – rasterization of perspectively-corrected textured triangles.
Education
MSc studies in Advanced Computer Graphics at Linköping University, Sweden, 2011 – 2012
No degree. Resigned after first (passed) semester.
BSc degree in Computer Science from Wrocław University of Technology, Poland, 2007 – 2011
Bachelor thesis: Software Renderer Accelerated by CUDA Technology.








Publications
Articles / Chapters



Self-published in 2018
The article explains how to make the well-known PCSS shadows algorithm work as fast as non-PCSS shadows.




Chapter 4.3 in GPU Zen, Black Cat Publishing, 2017
In this article I describe a fast (a little over 1.5 ms in 1080p on GeForce 660 GTX which is our test hardware of choice) and easy to implement gather-based bokeh depth of field solution, strongly inspired by Tiago Sousa’s work from “CryEngine 3 Graphics Gems”.




Chapter 4.2 in GPU Zen, Black Cat Publishing, 2017
In this article I present implementation of SSAO algorithm that is based on Morgan McGuire’s work. This implementation was used in Shadow Warrior by Flying Wild Hog in console ports of the game as well as the DX11 version. The implementation is fairly stable, gives very nice results and depicts good performance characteristics.




Chapter 5.3 in GPU Pro 5, A K Peters, 2014, co-authored
In this article we present how the so-called TRS system (or SRT; scale-rotation-translation) works in a hierarchy of scene objects. Unity Engine uses the exact same approach to mathematics that we described in this work.




Chapter 4.1 in GPU Pro 2, A K Peters, 2011
Variance Shadow Maps were first introduced as an alternative to bilinear percentage closer filtering (PCF) to speed up rendering of smoothed shadows. The algorithm is relatively cheap, easy to implement and very effective in rendering shadows with large penumbra regions. However, VSM also has one major drawback – apparent light-bleeding – which occurs when two or more shadow casters cover each other in light-space. This article shows techniques that help to reduce the light-bleeding artifacts in VSM.




Chapter 8.3 in GPU Pro, A K Peters, 2010
The goal of this article is to show major differences between Direct3D9 and OpenGL 2.0 as these, and their variants, are the most widely used APIs in game development. We talk about some general issues and resources management. This brief discussion is to give solid foundations to those who want to port code between D3D9 and OGL.



Published in 2008
An article about mathematics behind projection of a point onto a plane.
Books
- OpenGL i wprowadzenie do programowania gier (OpenGL and Introduction to Games Programming), 400 pages, in Polish, NAKOM, 2008
- Delphi. 10 praktycznych programów (Delphi. 10 Practical Programs), 200 pages, in Polish, MIKOM, 2005
- Delphi. Od podstaw (Delphi. From the Ground Up), 500 pages, in Polish, MIKOM, 2004
Video Courses
- Math in video games and 3D graphics, a series of 3 video courses (shortened version of this course), in Polish, Helion, 2024








