The Tampa Bay Rays selected Ramsey in the 19th round, with the 600th overall selection, of the 2011 MLB draft, and signed.[2] He made his professional debut in 2012 with the Gulf Coast Rays, going 2–1 with a 1.98 ERA in 13.2 innings.[2] He split the 2013 season between the Bowling Green Hot Rods and the Charlotte Stone Crabs, accumulating a 1–2 record with a 2.84 ERA in 50.2 innings.[2]
Miami Marlins
On July 7, 2014, Ramsey was traded to the Miami Marlins for international bonus slot money.[5] He split 2014 between the Montgomery Biscuits and the Jacksonville Suns, going a combined 3–2 with a 1.47 ERA in 60 innings.[2] On November 24, 2014, the Marlins added him to the 40-man roster.[6] He spent the entire 2015 season on the disabled list due to an undisclosed injury.[7] He was outrighted off the 40-man roster following the 2015 season.[8] His 2016 season was split between the Gulf Coast Marlins, the Jupiter Hammerheads, and Jacksonville, accumulating a 1–1 record with a 1.99 ERA in just 22 innings.[2]
Milwaukee Brewers
Ramsey was selected by the Milwaukee Brewers in the Triple-A phase of the 2016 Rule 5 draft.[9] His 2017 season was split between the Double–A Biloxi Shuckers, and the Triple–A Colorado Springs Sky Sox, accumulating a 3–4 record with a 5.26 ERA in 49.2 innings.[2] Ramsey elected free agency following the season on November 6, 2017.[10]
Houston Astros
On December 11, 2017, he signed a minor league contract with the Houston Astros.[11] In 2018, he split the season between the rookie–level Gulf Coast Astros and the Triple–A Fresno Grizzlies, accumulating a 3–2 record with a 2.04 ERA in 53 innings.[2] Ramsey elected free agency following the season on November 2, 2018.[12]
Los Angeles Angels
On December 11, 2018, Ramsey signed a minor league contract with the Los Angeles Angels.[13] He opened the 2019 season with the Salt Lake Bees.[2] On April 24, his contract was purchased and he was recalled to the major league roster.[14] He was designated for assignment on May 31 after pitching only 1.0 scoreless inning with one strikeout. Ramsey was released by the Angels on June 2, 2019.
His contract was purchased by the Toros de Tijuana of the Mexican League on July 10, 2019.[15] Ramsey did not play in a game in 2020 due to the cancellation of the LMB season because of the COVID-19 pandemic.[16] He later became a free agent.