Reyes was drafted by the Atlanta Braves out of Riverside Polytechnic High School in the second round of the 2003 MLB Draft. He spent his entire first professional season in the Gulf Coast League. In 10 starts with the Gulf Coast Braves, Reyes went 5-3 with a 2.56 ERA and 55 strikeouts in 45.0 innings pitched. He allowed just one home run all season. With Class-A Rome in 2004, Reyes struggled most of the season, going 2-5 with a 5.33 ERA. Tommy John surgery kept him out for the end of the year and the first half of the 2005 season. He was sent back to the GCL in 2005, and after doing well received a mid-season promotion to Class-A Danville. While his strikeout total fell, he went 3-0 with a 3.53 ERA and posted a WHIP of 0.99, but a torn anterior cruciate ligament ended his season prematurely. In 2006, Reyes went 8-1 with a 2.99 ERA and a 1.14 WHIP in 13 starts for Rome. He struck out 84 in 75.1 innings, and his performance during the first half of the season earned him a start in the All-Star Game for the Southern Division of the South Atlantic League. He also received a promotion to the Braves' Advanced-A club Myrtle Beach Pelicans. He went 4-4 with a 4.11 ERA and 1.34 WHIP. After his 10-1 performance in 2007, Reyes has moved ahead of left-handed Matt Harrison as the Braves' top pitching prospect. He was 8-1 with a 3.56 ERA in 13 starts at Double-A Mississippi, with a 3.56 ERA and 71 strikeouts in 73-1/3 innings. He pitched even better since a promotion to Triple-A Richmond, posting a 2-0 record with 27 strikeouts and a 1.57 ERA in 23.0 innings. On July 7, 2007 he was promoted to the Major League ball club, starting in place of the disabledJohn Smoltz against David Wells and the San Diego Padres. His first earned run came in the second inning on a solo home run by Khalil Greene. In his first plate appearance the following inning, he laid down a successful sacrifice bunt to move Jarrod Saltalamacchia to third base. Reyes lasted only 3+ innings however, giving up five earned runs on five hits and three walks while striking out one. He received no decision in the game. Reyes earned his first Major League win on September 18, 2007 in a 4-3 Braves' win against the Florida Marlins at Turner Field. The Braves hoped to find a number 5 starter in Reyes. In the 10 starts he made in 2007, he was 2-2 with a 6.22 ERA, but with all the Braves injuries in 2008 Reyes became a regular starter.
Toronto Blue Jays
On July 14, 2010, Reyes and Yunel Escobar were traded to the Toronto Blue Jays for Álex González, Tyler Pastornicky, and Tim Collins. He made his Blue Jays debut on April 5 against the Oakland Athletics, giving up 9 hits and 5 earned runs over just 3.1 innings. Reyes had not won a game since June 13, 2008. On May 25, 2011, he lost against the New York Yankees for his 28th consecutive start without earning a win, tying the Major League record set by Cliff Curtis and Matt Keough. Reyes was able to break his consecutive winless streak on May 30, 2011, with an 11-1 complete game victory over the Cleveland Indians. In his next start on June 5 against the Baltimore Orioles, Reyes won, pitching 6.1 innings with 4 walks and 3 strikeouts. With the win, Reyes won consecutive starts for the first time in his career. On July 23, he was designated for assignment after making 20 starts in 2011, recording a 5.40 ERA and a 5–8 win–loss record.
Baltimore Orioles
On August 2, he was claimed off waivers by the Baltimore Orioles. On August 31, Reyes faced the Blue Jays for the first time since being released. He pitched only 2.2 innings, surrendering 8 hits and 7 earned runs, while striking out 2. The Orioles went on to lose 13-0.
Reyes signed a minor league contract with the Pittsburgh Pirates on January 3, 2012. In November 2012, Reyes elected free agency. Reyes signed with the Los AngelesAngels of Anaheim in November 2012.
SK Wyverns
On January 16, 2013, Reyes was granted his release by the Angels to sign with the SK Wyverns in Korea. Reyes signed a two-year contract with the SK Wyverns of the KBO in Korea in 2013, but was released in early 2014.
By July, he had returned to the American minor leagues, pitching for the Lehigh Valley IronPigs, an affiliate of the Philadelphia Phillies. Reyes was released on August 17, 2014. Reyes signed with the Piratas de Campeche of the Mexican League for 2015.
Second stint with the Angels
On June 16, 2015, Reyes re-signed with the Angels on a minor league deal. On October 3, 2015, Reyes made his first MLB appearance since 2011, recording one out on one pitch in the 8th inning against the Texas Rangers. Reyes also earned the win after the Angels mounted a five run comeback in the top of the 9th to win 11-10.
Miami Marlins
On June 28, the Marlins called him up after appearing in over 36 innings in AAA.
On April 24, 2017, Reyes signed with the Toros de Tijuana of the Mexican Baseball League. Reyes retired from professional baseball at the end of the season.