Born on February 5, 1995 in Esmeraldas, Ecuador, Castillo made his professional debut in 2013 with Liga Deportiva Universitaria de Loja, and was later acquired by Independiente del Valle before signing with Barcelona Sporting Club of Guayaquil. From Barcelona he spent a brief loan spell with Club Olmedo before returning to Barcelona, where he played with current Santos head coach Guillermo Almada. He was a regular starter with the 2016 team that won the Ecuadorian Serie A title.
At the international level, he received his first call to Ecuador's senior team in 2017, and was credited with an assist in the team's 3-1 over Trinidad and Tobago. He has experience playing in prestigious competitions such as Copa Libertadores, where he reached the Semifinals with Barcelona SC in 2017.
In 2018 he made his Liga MX debut with Club Tijuana, where he remained until the 2019 Clausura.
He is characterized for his explosiveness and versatility with the ability to play on either the right or the left, his field of vision, and one-on-one ability.