He is commonly referred to by his nickname Piojo (Spanish: Louse).A former defender, Herrera began his career playing with second division side Deportivo Neza in 1985, then transferring to Tecos UAG in 1987, and making his debut in the Primera División in 1988.
After a brief period with Santos Laguna, in 1989 Herrera transferred to Atlante and went on to play for the club on three separate occasions, winning his only league championship as a player during the 1992–93 season.
He also had a notable career with Toros Neza, making over 100 appearances for the club from 1995 until 1997.
In 2018, he won a second Liga MX title in his second spell with the club.
In October 2013, Herrera was named interim coach of the Mexico national team to guide them through the intercontinental playoff matches against New Zealand to qualify for the 2014 World Cup.
After Mexico won the playoff and gained qualification, Herrera's job was extended to coaching the team during the World Cup.
He ultimately extended his contract until 2018.
Despite leading Mexico to the 2015 CONCACAF Gold Cup, he was sacked as coach of the national team after an alleged physical altercation with a reporter.