The Tampa Bay Rays selected Shaffer in the first round, with the 25th overall selection, of the 2012 Major League Baseball draft. He made his professional debut for the Hudson Valley Renegades of the Class A-Short Season New York–Penn League, hitting .308/.406/.487 and four home runs in 33 games. In 2013, he played for the Charlotte Stone Crabs of the Class A-Advanced Florida State League, hitting .254/.308/.399 with 11 home runs. He played in the Arizona Fall League after the season. He started the 2014 season for the Montgomery Biscuits of the Class AA Southern League.
