Hefner attended Seminole State College for two years before transferring to Oral Roberts University.
[1] The New York Mets selected Hefner in the 46th round of the 2004 Major League Baseball draft; however, he opted not to sign.
Hefner signed with the San Diego Padres after the team selected him in the fifth round of the 2007 Major League Baseball draft.
In 2008, he pitched for the Fort Wayne Wizards and Lake Elsinore Storm, going a combined 10–5 with a 3.34 ERA in 30 games (25 starts), striking out 150 batters in 145 1/3 innings.
On April 23, 2012, Hefner was called up to the Mets roster to fill in for Ronny Cedeño, who was placed on the disabled list with a strained left intercostal muscle.
Hefner recorded his first career loss against the Toronto Blue Jays on May 19, 2012, after pitching five innings of relief.
On May 29, Hefner recorded his first big-league win against the Philadelphia Phillies, which also included his first hit, a home run.
[5] On September 26, 2012, Hefner was the winning pitcher on the same night that David Wright broke the Mets' all-time hits record.
[11] On December 28, 2015, the St. Louis Cardinals signed Hefner to a minor league contract, which included an invitation to spring training.
[12] Hefner spent the 2016 season with their Triple-A affiliate, the Memphis Redbirds, where he posted a 3–6 record and 5.25 ERA with 82 strikeouts across 18 starts.