Ha sido editor cultural y columnista del diario El Tiempo y ha estado vinculado a las revistas Cambio, Semana, Gatopardo y Soho. En 1993 publicó El reino que estaba para mí. Conversaciones con Álvaro Mutis.
Entre 2000 y 2001 fue corresponsal de Gatopardo en Buenos Aires. En 2002 Planeta publicó su primera novela, En esas andaba cuando la vi. En 2006 apareció Esto huele mal con el sello de Seix Barral, novela que cuenta con varias ediciones y que en 2007 fue llevada al cine. Con Justos por pecadores ha sido finalista del Premio Iberoamericano de Narrativa Planeta-Casamérica 2008.