Fue nombrado John James Kelly en honor a su padre, pero para evitar confusiones en el hogar, la familia decidió referirse a él como Sean, que es la forma irlandesa de John.
En el Tour de Flandes casi se alza con su quinto monumento, quedando segundo en tres ocasiones (1984, 1986 y 1987).
En 1986, Adrie van der Poel le ganó el esprint por escasos metros, cuando era favorito.
También ganó en importantes clásicas, como la Paris-Tours, el Gran Premio de las Naciones o la Gante-Wevelgem y fue podio en otras tan prestigiosas como la Amstel Gold Race, E3 Harelbeke, Omloop Het Nieuwsblad, Clásica de San Sebastián y en numerosas pruebas de menor rango.
Destacan los siete triunfos consecutivos en la París-Niza que constituyen uno de tantos récords que ostenta este corredor, además de trece etapas y varias victorias más en clasificaciones menores.
Fue vencedor de la clasificación por puntos en cuatro ocasiones (1982, 1983, 1985 y 1989), algo que hasta entonces nadie había logrado.