Ha esordito agli Allievi della Reggina; ha allenato: Lanciano[1] (dimessossi con la squadra 1º in classifica per cambio società), Noicattaro[2] (esonerato), Altamura[3], Atletico Catania[4] (subentrato), Manfredonia (subentrato e subito esonerato)[5], San Paolo Bari (esonerato), Rosarno[6], Montenero[7] (subentrato e dimessosi con la squadra in zona salvezza), Gallicese[8], Praia a Mare[9], Budoni[9] (risoluzione consensuale del contratto d'accordo con la società), Locri[10], Bolzano[11] (1 promozione e 1 retrocessione in 2 campionati). Dal novembre 2013 subentra come allenatore nei "Giovanissimi '99" della Feltrese vincendo il campionato in élite. L'anno dopo ha guidato la prima squadra in Eccellenza Veneto portando la squadra alla salvezza.
Nella stagione 2017-18 la Reggina lo nomina allenatore della formazione Berretti.
A partire dal 2018 ritorna in Puglia, e più precisamente a Bitonto, per allenare la formazione Under-11 dell'USD Olimpia Bitonto, formazione giovanile cittadina[senza fonte].
Nella stagione 2014-15 diventa il responsabile del settore giovanile della Reggina fino a novembre quando rassegna le dimissioni per motivi familiari. Nella stagione 2017-18 torna di nuovo a ricoprire questo ruolo nella squadra amaranto.