Born in Bogotá, Roa began his career playing for Santa Fe's youth set-up after catching the eye of club president César Pastrana. Following an impressive youth career with the club, Roa was promoted to the first team in 2010 and played for Santa Fe for nine years, winning three league titles, three Superligas, the Copa Sudamericana in 2015, and the 2016 Suruga Bank Championship.
After his contract with Santa Fe expired at the end of 2019, on 11 January 2020 Roa joined Deportivo Cali under a one-year contract.[3]