W latach 1961–1965 pracował w Szpitalu Miejskim Nr l w Bielsku-Białej, a od 1965 do 1967 i od 1972 do 1973 w Akademii Medycznej w Krakowie (Państwowym Szpitalu Klinicznym). Od 1970 do 1971 był też zatrudniony w Miejskim Ośrodku Matki i Dziecka w Krakowie. W 1971 został asystentem, a następnie starszym asystentem Katedry Psychiatrii AM. Od 1975 do 1979 był adiunktem, od 1979 do 1983 adiunktem habilitowanym. W 1983 został docentem.
Od 1981 do 1984 był prodziekanem Wydziału Lekarskiego, w latach 1984–1988 członkiem Kolegium Dziekańskiego Wydziału Lekarskiego, a od 1984 do 2009 kierownikiem Zakładu Patologii Społecznej w Katedrze Psychiatrii Collegium Medicum UJ. Był kierownikiem Zakładu Psychologii Klinicznej Instytutu Psychologii Uniwersytetu Jagiellońskiego. Od 1976 do 1981 pełnił obowiązki specjalisty wojewódzkiego w zakresie psychiatrii w Tarnowie. Od 1996 zatrudniony w Zakładzie Rehabilitacji w Neurologii i Psychiatrii Akademii Wychowania Fizycznego w Krakowie.
Na początku lat 90. rozpoczął karierę dyplomatyczną. Od 1991 do 1996 pełnił misję jako ambasador nadzwyczajny i pełnomocny RP w Chile, akredytowany jednocześnie w Boliwii. Od 1997 do 2000 był także konsulem honorowym Republiki Chile w Krakowie.