He has previously played in MLB for the Miami Marlins, San Francisco Giants, Pittsburgh Pirates, and Boston Red Sox.
[1] Lightly recruited by college baseball programs, Heineman did not receive any scholarship offers.
[2] He was named All-Pac-12 Conference[3] and a semifinalist for the Johnny Bench Award, given annually to college baseball's best catcher.
After the 2014 regular season, the Astros assigned Heineman to the Salt River Rafters of the Arizona Fall League.
[7] Heineman began the 2015 season with Corpus Christi, and received a midseason promotion to the Fresno Grizzlies of the Triple–A Pacific Coast League.
[8] On March 26, 2017, during spring training, the Astros traded Heineman to the Milwaukee Brewers in exchange for a player to be named later or cash considerations.
[8] In 2018, Heineman played in 78 games split between Colorado Springs and the Double–A Biloxi Shuckers, accumulating a .251/.360/.346 batting line with 4 home runs and 24 RBI.
[14] He made his major league debut the next day against the Pittsburgh Pirates, striking out as a pinch hitter.
[18] On January 6, 2020, Heineman signed a minor league contract with the San Francisco Giants that included an invitation to spring training.
[22] On July 1, 2021, after hitting .254 in only 77 plate appearances with the Triple-A Memphis Redbirds, Heineman was released by the Cardinals.
On March 12, 2022, Heineman signed a minor league contract with the Toronto Blue Jays.
On November 15, Heineman was designated for assignment by the Pirates after they protected multiple prospects from the Rule 5 draft.
[34] The Mets then designated him for assignment on January 30, 2024[35] and traded him to the Boston Red Sox on February 2 in exchange for cash considerations.