Absolwent Akademii Muzycznej w Krakowie na kierunku dyrygentury chóralnej. W latach 2009–2012 był śpiewakiem Chóru Polskiego Radia w Krakowie. Od 2010 roku jako dyrygent związany jest z Chórem Akademickim Uniwersytetu Jagiellońskiego Camerata Jagellonica, a od 2017 – z Krakowskim Chórem Akademickim Uniwersytetu Jagiellońskiego.
Pełnił funkcję dyrygenta Krakowskiego Chóru Męskiego Uniwersytetu Papieskiego Jana Pawła II w Krakowie (2013–2017) i kierownika Chóru Opery Krakowskiej (2020–2024). Był również jednym z dyrygentów i aranżerów centralnych wydarzeń Światowych Dni Młodzieży w Krakowie w 2016 roku.
