S'il commence sa carrière en courant principalement le 1 500 m, c'est sur 5 000 m qu'il remporte une première médaille en décrochant l'argent aux Jeux olympiques de 2000 à Sydney, derrière le KényanMillon Wolde. Lors de la compétition majeure suivante, les mondiaux 2001 à Edmonton, il remporte à nouveau la médaille d'argent mais en est déchu à la suite d'un contrôle antidopage positif qui lui vaut deux ans de suspension. Il retrouve la compétition fin 2003. Aux Jeux olympiques d'Athènes en 2004, il termine à la 10e place sur 5 000 m puis à la 5e place lors des mondiaux d'Helsinki. Aux Jeux olympiques de 2008, il ne parvient pas à se qualifier pour la finale du 5 000 m. Durant sa carrière, il a été entraîné par Philippe Dupont (France), Michel Diche (France), Fodil Dehiba (France) et Amar Bramia (Algérie).