W latach 1957–1970 prowadził zajęcia jako wykładowca z przedmiotów społeczno-politycznych (nauka o wojnie i wojsku) w Akademii Medycznej w Gdańsku oraz na Politechnice Gdańskiej. W 1972 ukończył trzymiesięczny kurs pracowników aparatu partyjnego w Wyższej Szkole Partyjnej KC KPZR w Moskwie. W listopadzie 1973 objął stanowisko szefa Zarządu Politycznego – zastępcy dowódcy Marynarki Wojennej ds. politycznych. Na tym stanowisku był przez 13 lat zastępcą admirała Ludwika Janczyszyna. W październiku 1975 na mocy uchwały Rady Państwa PRL został awansowany do stopnia kontradmirała. Nominację wręczył mu 10 października 1975 w Belwederze I sekretarz KC PZPR Edward Gierek.
W 1978 ukończył Kurs Operacyjny dla Kierowniczej Kadry Sił Morskich Państw - Stron Układu Warszawskiego w Akademii Marynarki Wojennej ZSRR w Leningradzie, a w 1983 Wyższy Kurs Akademicki w Wojskowej Akademii Sztabu Generalnego Sił Zbrojnych ZSRR im. K. Woroszyłowa w Moskwie. Od lutego 1986 do grudnia 1989 był I zastępcą szefa Głównego Zarządu Politycznego Wojska Polskiego, gen. broni Tadeusza Szaciły. W październiku 1987 na mocy uchwały Rady Państwa PRL został awansowany do stopnia wiceadmirała.