Z wykształcenia fizyk. Obecnie jest doktorantem na Wydziale Fizyki Astronomii i Informatyki Stosowanej Uniwersytetu Mikołaja Kopernika w Toruniu. Zajmuje się symulacjami komputerowymi układów biologicznych (dynamika molekularna) oraz bioinformatyką.
Programowanie jest nieodzowną częścią jego pracy naukowej. Ma doświadczenie w programowaniu w językach C, C++, Delphi, Fortran, Java i Tcl. Z językiem C# i platformą .NET pracuje od 2002 roku.