Odbywał półtoraroczne stypendium Humboldta (1986–1988) w Max-Planck-Institut für ausländisches und internationales Strafrecht we Freiburgu pod kierownictwem profesora Albina Esera. Przebywał również w tym instytucie na stypendiach w latach 1991–1992 oraz 2005, odbywał staż także na Uniwersytecie w Kolonii pod kierunkiem profesora Hansa Joachima Hirscha.
Został pracownikiem naukowym Katedry Prawa Karnego Uniwersytetu Jagiellońskiego oraz Wyższej Szkoły Prawa i Administracji w Przemyślu. Wykładał również na Uniwersytecie Rzeszowskim (jako pracownik Zakładu Prawa Karnego i Postępowania Karnego). Obejmował na tych uczelniach stanowiska profesorskie. Pod jego kierunkiem stopień naukowy doktora uzyskała w 2003 Maria Szczepaniec.
Członek Towarzystwa Naukowego Prawa Karnego. W latach 1978–1982 pełnił funkcję prezesa Towarzystwa Asystentów UJ. Od 1982 do 1985 był przedstawicielem pomocniczych pracowników naukowych w pierwszej Radzie Głównej Nauki i Szkolnictwa Wyższego. Należy także do Krakowskiego Towarzystwa Przemysłowego. Był współzałożycielem Pierwszego Polsko-Amerykańskiego Banku w Krakowie. Został też członkiem Komitetu Nauk Prawnych Polskiej Akademii Nauk.