Smith attended Seneca Valley High School in Harmony, Pennsylvania, graduating in 2006. During his high school career, he played for the school's American football team as a quarterback, but was limited to only 12 games.
Smith enrolled at the University of Pittsburgh and played for the Pittsburgh Panthers football team. He redshirted during his first year at Pittsburgh, in 2006, and became the Panthers' starting quarterback in 2007 following an injury to Bill Stull. He lost his starting role to Pat Bostick, a true freshman, after struggling in a 2007 game against the Michigan State Spartans. He appeared in five games during the 2007 season, and one game during the 2008 season.
After the 2008 season, coach Dave Wannstedt and offensive coordinator Matt Cavanaugh approached Smith about changing positions. As Smith had increased his weight training, they considered moving him to outside linebacker or tight end. He instead opted to quit football so that he could play for the Pittsburgh Panthers baseball team. For the baseball team, Smith had a .375 batting average, 19 home runs and 123 runs batted in (RBIs) in his three seasons. He was twice named an All-Big East Conference selection and twice named to the All-Tournament Team in the Big East Conference Baseball Tournament.
The Chicago White Sox selected Smith in the seventh round of the 2011 MLB Draft. He began his career with the Bristol White Sox of the Rookie-level Appalachian League. He was promoted mid season to the Great Falls Voyagers of the Rookie-level Pioneer League. He began the 2012 season with the Kannapolis Intimidators of the Class A South Atlantic League. Towards the end of the season, Smith was promoted to the Winston Salem Dash of the Class A-Advanced Carolina League. In 2013, Smith played the whole season for Winston-Salem.
In 2014, Smith played for the Birmingham Barons of the Class AA Southern League. He hit .290 with 10 home runs and 48 RBIs in 106 games for Birmingham, and threw out 33 percent of baserunners attempting stolen bases. After the 2014 season, the White Sox assigned Smith to the Glendale Desert Dogs of the Arizona Fall League. On November 20, 2014, the White Sox added Smith to their 40-man roster. Smith spent the 2015 season with the Charlotte Knights of the Class AAA International League, and began 2016 in Charlotte.
With Alex Avila going on the disabled list, the White Sox promoted Smith to the major leagues on April 24, 2016. Smith was scratched from the lineup on April 25 with back spasms, and the White Sox put Smith on the disabled list due to sacroiliac joint dysfunction the next day. On May 22, 2016, he was activated from the 15-day disabled list and returned to Charlotte. One game after his activation with the Knights, he went back on the disabled list. The White Sox promoted Smith to the major leagues on September 1, and he made his major league debut that day. He recorded his first two major league hits on September 17. On February 10, 2017, Smith cleared waivers and was outrighted to Charlotte.
Smith began the 2017 season with Charlotte, and was promoted to the major leagues on April 13.