Ha insegnato Biologia molecolare all'Università degli Studi di Pavia dal 1966 al 1979, dove rimase direttore della scuola di specializzazione in Genetica (dal 1979 al 1984). È stato direttore dell'Istituto di Genetica Biochimica ed Evoluzionistica (IGBE) del CNR di Pavia (Ora IGM, Istituto di Genetica Molecolare) dal 1970 al 1987 e direttore del Progetto Finalizzato “Ingegneria Genetica” del CNR dal 1982 al 1989.