W latach 1974–1977 był członkiem komitetu zakładowego PZPR w MSZ.

Od 1979 do 1981 pracował w Ambasadzie PRL w Paryżu jako radca-minister pełnomocny, a powrocie do centrali MSZ objął kierownictwo Departamentu Studiów i Programowania. W 1987 przewodniczył polskiej delegacji na wiedeńską Konferencję Bezpieczeństwa i Współpracy w Europie. W tym samym roku objął funkcję Ambasadora PRL w Szwecji.

W latach 1990–1992 był wicedyrektorem Departamentu Planowania i Analiz, a w latach 1992–1993 wicedyrektorem Departamentu Instytucji Europejskich MSZ. Od 1993 do 1994 był zastępcą i p.o. szefa misji KBWE w Mołdawii, po czym powrócił na stanowisko wicedyrektora Departamentu Instytucji Europejskich. W 1994 pełnił funkcję zastępcy szefa misji OBWE na Ukrainie oraz kierownika Biura OBWE w Symferopolu. W 1996 reprezentował Polskę w Komitecie Wyższych Urzędników Rady Państw Morza Bałtyckiego oraz pełnił funkcję Krajowego Koordynatora Inicjatywy Środkowoeuropejskiej.

Od 1996 kierował jako ambasador polską placówką dyplomatyczną w Belgradzie. Po powrocie do kraju w styczniu 2002 otrzymał nominację na stanowisko podsekretarza stanu w MSZ. W latach 2003–2006 był ambasadorem RP w Bułgarii. Na koniec kadencji w listopadzie 2006 odznaczony został Orderem Starej Płaniny II stopnia.