[3] He was assigned to begin his professional career with the Rookie-level Burlington Indians, and went 3–1 in nine games (four starts) while striking out 46 in 34 innings pitched.
He was later called up to the Double-A Akron Aeros for one game in which he picked up the victory by going five innings and allowing two runs while striking out six.
[5] On August 4, 2007, Laffey made his major league debut against the Minnesota Twins; he went 5+1⁄3 innings while allowing six hits, three runs, a walk, and three strikeouts in a losing effort.
He was designated for assignment the next day to clear a roster spot for Alex Rodriguez,[19][20] though he was placed on optional waivers.
[22] He was called back up to the majors when the rosters expanded in September, and pitched regularly as a reliever through the final weeks of the season.
[24] On December 30, 2011, Laffey signed a minor league contract with the Toronto Blue Jays.
[25] After failing to make the team out of spring training, Laffey had his contract purchased by Toronto on April 8, 2012.
[30] He finally pitched his first game as a Blue Jay on June 13, giving up two runs in three innings of relief work against the Washington Nationals.
[34][35] Laffey made his first start for the Mets on April 7, going 4+1⁄3 innings and giving up three earned runs, striking out five, and walking one in a 4–3 victory over the Miami Marlins.
[38] He made his first start for the 2013 Blue Jays on April 26 against the New York Yankees, filling in for Josh Johnson, who was scratched due to a sore right triceps.
[40] The Blue Jays announced on April 29 that Laffey had refused an assignment to the Buffalo Bisons, and had become a free agent.
[41] On April 30, 2013, Laffey signed a minor league contract with the Los Angeles Dodgers.
[47][48] Laffey signed a minor league contract with Washington Nationals on March 30, 2014,[49] and spent the entire season with the Triple–A Syracuse Chiefs, compiling a 12–6 record and a 3.67 ERA in 25 games (21 starts).
[43] He was promoted to the major leagues in 2015, pitching in three games for the team (1–0, 3.68 ERA),[3] and was designated for assignment on July 11, 2015.
On December 19, 2015, Laffey signed a minor league contract to return to the Washington Nationals organization.
[3] In 21 games (13 starts) with the Triple-A Reno Aces, he recorded a 5.42 ERA with 44 strikeouts across 79+2⁄3 innings of work.
[57] On June 6, 2018, following a start for the Las Vegas 51s where he allowed 14 runs (12 earned), Laffey announced his retirement.
[59][60] They have two sons and a daughter together, Braeden Parker (June 27, 2010),[61][62] Ashton Ryker (November 10, 2011) and Peyton Grace (February 27, 2015).