Gibson began his career as a youth player for Dundee United before he signed a one-year contract with the club in March 2007. The following year, in May 2008, Gibson signed another one-year contract with the club. Shortly signing a new contract with Dundee United, he was loaned out to Forfar Athletic to gain first team experience. After four months at the club, his loan spell with Forfar Athletic was extended until the end of the season. He was released by Dundee United in 2009 having failed to make a first team appearance for the club.
Dundee
Gibson signed for city rivals Dundee on a one-year deal in 2009 and was loaned out to Elgin City. His form earned him a new contract extension. After a further loan spell at Sligo Rovers he made his debut for Dundee on the last day of the 2010–11 season against Queen of the South. He signed a further one-year contract extension in May 2011. Ahead of the 2012–13 season, Gibson signed for Elgin City on loan for a second time. In January 2013, he went out on loan again, this time to Montrose. Upon returning to Dundee, Gibson signed a new contract with the club. On 28 March 2014, Gibson joined Elgin City on loan for a third time, signing until the end of the 2013–14 season. On 12 May 2014, Dundee announced Gibson would be leaving the club at the end of his contract.
Alloa Athletic
After being released by Dundee, Gibson was announced as one of three new signings by Elgin City, however on 27 May 2014, Elgin manager Barry Wilson said that Gibson had changed his mind and wouldn't be signing for Elgin with reports suggesting he had agreed a move to Airdrieonians. On 31 May 2014, Alloa Athletic confirmed that they had completed the signing of Gibson. Gibson finished the 2014–15 season as Alloa's first choice goalkeeper. He played in the end of season relegation play-offs in the Scottish Championship as Alloa avoided the drop defeating both Brechin City and then Forfar Athletic over two legs. Gibson kept a clean sheet in 2–0 semi final first leg win at Brechin City. Gibson later shutout Forfar Athletic in the 3–0 play-off final second leg victory, as Alloa recovered from a 3–1 deficit in the first leg to survive relegation. Gibson made 17 appearances in all competitions for Alloa.
Clyde and Petershill
Clyde announced they had signed Gibson on 23 May 2015. He was already their eighth summer signing. Gibson spent two seasons with Clyde before leaving in May 2017. After leaving Clyde, Gibson agreed to sign with Scottish League One club Arbroath on 8 June 2017. However, it was announced a few weeks later that Gibson would not be joining the team for the 2017–18 season after his employment left him unable to commit to the club. He subsequently joined junior football club Petershill.
International career
Gibson represented Scotland under-19's in an international challenge match in 2007.