On November 16, 2004, he signed with the Washington Nationals. He played for Harrisburg in 2005, playing in 40 total games for the team. Rivera made his MLB debut on May 25, 2006, for the Washington Nationals against the Houston Astros. In that game, he got his first hold, pitching 2/3 of an inning. He struck out one and walked one. He had been called up from Triple-A New Orleans on May 22, 2006. He finished his rookie season with a 3.43 ERA. He struck out 41 and walked 32. In 2007, he only allowed one home run in 93 innings pitched. Rivera spent 2007 between the major league club and the Triple-A Columbus Clippers, pitching in 85 games for Washington. In 2008, played the entirety of the season with Washington, pitching in 76 games. In 2009, Rivera played in 30 games for the Triple-A Syracuse Chiefs and 30 for the major league club. On December 7, 2009, Rivera was released by the Nationals to make room on the 40-man roster for Brian Bruney.[1]
Cleveland Indians
On December 21, 2009, Rivera signed a minor league contract with an invite to Spring training with the Cleveland Indians. He began the season with the Triple-A Columbus Clippers.
Arizona Diamondbacks
On May 17, 2010, Rivera was traded to the Arizona Diamondbacks for cash considerations.[2] He would play for the Triple-A Reno Aces, but also appear in 4 major league games for Arizona, pitching to a 22.09 ERA over 3.2 innings. He was designated for assignment on June 8, he cleared waivers and was sent outright to Triple-A Reno Aces on June 11. He was released on July 26, 2010.
Cleveland Indians (second stint)
On August 21, 2010, Rivera re-signed with the Cleveland Indians on a minor league contract, and was assigned to Triple-A Columbus the following day. He elected free agency on October 5.
Saraperos de Saltillo
On March 28, 2011, Rivera signed with the Saraperos de Saltillo of the Mexican League. He was released on June 29. In 12 games 13.1 innings of relief he struggled going 1-0 with a 6.08 ERA with 7 strikeouts and 1 save.
Road Warriors
On July 5, 2011, Rivera signed with the Road Warriors of the Atlantic League of Professional Baseball. He became a free agent after the season. In 28 games 42 innings of relief he went 2-4 with a 4.29 ERA and 29 strikeouts.