García signed with the Pittsburgh Pirates as an international free agent on May 18, 2010. He made his professional debut that season with the Dominican Summer League Pirates, batting .250/.333/.333 in 51 games. In 2011, he split the season between the Gulf Coast League Pirates and the Low–A State College Spikes, accumulating a .266/.322/.440 slash line with 5 home runs and 35 RBI. The next year he played for the Single–A West Virginia Power and posted a .240/.286/.403 batting line with career-highs in home runs (18) and RBI (77). García spent the 2013 season with the High–A Bradenton Marauders, batting .256/.294/.437 with 16 home runs and 60 RBI.[1] On June 25, 2013, he set the Marauders team record for hits in a game with six.[2] García played the 2014 season with the Double–A Altoona Curve, posting a 271/.311/.478 slash line with 18 home runs and 63 RBI.[3]
On November 20, 2014, the Pirates added García to their 40-man roster to protect him from the Rule 5 draft.[4] He spent the entire 2015 season in the minors, splitting time with the Triple–A Indianapolis Indians and Altoona, posting a .275/.314/.431 batting line with 15 home runs and 67 RBI between the two teams. He spent the 2016 season in Indianapolis, hitting .245/.293/.366 with 6 home runs and 43 RBI. On December 31, 2016, García was designated for assignment by the Pirates.[5]
Chicago White Sox
García was claimed off waivers by the Chicago White Sox on January 6, 2017.[6] The White Sox promoted him to the major leagues on April 14 and he made his MLB debut that day.[7] In 44 games in his rookie season with Chicago, García slashed .238/.305/.400 with 2 home runs and 12 RBI. On March 9, 2018, he was released by the White Sox organization.[8]
On March 24, 2021, García was traded to the Schaumburg Boomers of the Frontier League in exchange for a player to be named later.[11] In 8 games for Schaumburg, García slashed .138/.265/.276 with 1 home run and 3 RBI.
Tri-City ValleyCats
On June 18, 2021, García was traded to the Tri-City ValleyCats of the Frontier League.[12] He played in 58 games for the team down the stretch, slashing .297/.356/.455 with 6 home runs and 26 RBI.
In 2022, García appeared in 34 games for the ValleyCats, hitting .305/.352/.496 with 6 home runs and 24 RBI.
On February 21, 2023, García signed with the New Jersey Jackals of the Frontier League.[14] He was released on February 14, 2024, after not appearing in a game during the 2023 season.[15]