Personal info

name Ville Timonen picture of me
nationality Finland
birth 1983
languages Finnish (native)

Current occupation

full-time Principal Software Engineer, VR Rendering
Rendering R&D for virtual reality
  Nokia Technologies


I try to keep my professional focus on the R&D side of computer graphics and high performance computing. I prefer to be involved in both the high-level research and design and the efficient low-level implementation of the most challenging algorithms. See the work section and linkedin for work history.


I received my PhD in computer science in April 2014. I focused my research on visibility and illumination algorithms for height field and screen-space geometry, and my dissertation was awarded the highest grade. I did my research solo and receiver awards such as 3rd best paper in Eurographics and best student paper in Eurographics Symposium on Rendering. For more details see degree summary and research.

In January 2007 I graduated as a MSc in computer science. I specialized in software development, programming, math, and physics. I finished the degree in a very fast pace, while taking extra courses and maintaining a high grade average (see the degree summary). My master's thesis was awarded the highest grade and chosen to represent our department in the national thesis competition.

I graduated from upper secondary school in 2002. Mathematics was my speciality; I managed perfect score in advanced mathematics, achieved by about every 500th student.


I wrote my first programs when I was 10 years old, and have been programming nearly daily since 1998. You can find selected hobby projects in the softography section. The most experience I have from GPGPU, graphics, HPC, multimedia, and operating system tools programming. (See programming experience)

In addition to programming, I am interested in different operating systems and software designs. I have had Unices in daily use since 1999, and I am experienced in administering a variety of them, including Solaris, Linux, HP-UX, and BSDs. For more detail, see the Unix experience section.

I have always found programming the best way for me to express my creativity.

Software mixer

thumbnail A software mixer designed to monitor and route various inputs to outputs. Intended for HTPCs with a touch screen.

TV software

thumbnail A TV software capable of extracting, storing, and playing concurrent program streams. An EPG, remote controlling, file playback and animated software rendered graphics are provided among other features. Meant for HTPC use.

3D engine

thumbnail This OpenGL based 3D graphics and physics engine is from early 2000s and implements features such as a Lightwave object loader, geometric shadows, ambient occlusion, per-pixel lighting, normal mapping, offset mapping, relief mapping, hard and soft self-shadowing of surfaces, high dynamic range rendering, and ray-marched translucent volumes.

Statistics software

thumbnail A statistics and monitoring software used for monitoring various computer and operating system metrics over network. Graphics are OpenGL accelerated for minimized CPU utilization.