Na początku lat 60. pracował jako nauczyciel w szkole dla pracujących. Od 1962 związany z krakowską uczelnią pedagogiczną, która zmieniła nazwę na Akademię Pedagogiczną im. KEN, a następnie na Uniwersytet Pedagogiczny im. KEN. W 1991 został kierownikiem Katedry Historii XIX wieku, był też wicedyrektorem (1991–1994) i dyrektorem (1994–1999) Instytutu Historii. W latach 1999–2005 pełnił funkcję prorektora ds. nauki i współpracy z zagranicą. W kadencji 2005–2008 zajmował stanowisko rektora Akademii Pedagogicznej. Przewodniczył Konferencji Rektorów Uczelni Pedagogicznych.
Wchodził w skład Komitetu Nauk Historycznych Polskiej Akademii Nauk, był członkiem komitetu redakcyjnego „Studiów Historycznych”. Członek Polskiego Stowarzyszenia Autorów, Dziennikarzy i Tłumaczy w Europie z siedzibą w Paryżu (APAJTE), Światowej Rady Badań nad Polonią, Polskiego Towarzystwa Historycznego, Komisji PAU do Badań Diaspory Polskiej oraz Komisji Prasoznawstwa przy Polskiej Akademii Nauk.
Należał do Polskiej Zjednoczonej Partii Robotniczej. W latach 1966-68 wchodził w skład Komitetu Uczelnianego PZPR w WSP, był odpowiedzialny za Zespół ds. Szkolenia Wewnątrzpartyjnego w Uczelnianym Ośrodku Propagandy Partyjnej.