Thomson won five major trophies with Rangers, including consecutive Scottish Premier League championships in 2009 and 2010.
He then moved on to play for Edinburgh youth side Hutchison Vale before being signed by Coventry City on a four-year contract,[4] but suffered from homesickness and returned to Scotland with Hibernian.
[5] He was one of a group of young players who came through their youth team during the early 2000s, also including Steven Whittaker, Derek Riordan, Scott Brown and Garry O'Connor.
[10] Hibernian refused to meet with McKay to discuss improved contracts, which resulted in Brown submitting a written transfer request.
Thomson made his Rangers debut on 11 February in a 3–1 victory over Kilmarnock, although he was substituted at half-time after suffering a hamstring injury.
[20] In the following league match against Kilmarnock at Rugby Park, a 4–0 victory for Rangers was overshadowed by Thomson suffering a serious knee injury.
[23] Thomson was sent off in the 2010 League Cup Final in the second half for a poorly timed challenge, although Rangers won the match 1–0 despite Danny Wilson also being shown a red card.
[26] Middlesbrough then confirmed that Thomson had passed a medical, despite the player having suffered two serious knee injuries earlier in his career, and completed his transfer.
[26] In his second league match for Middlesbrough, Thomson suffered a fractured fibula against Leicester City, which prevented him from playing for two months.
[30] A move appeared unlikely because Hibs had no spare budget to pay Thomson with,[31] but he decided in March to forego any salary and signed with the club until the end of the 2012–13 season.
[34] Thomson dropped out of the Hibs team after manager Pat Fenlon was replaced with Terry Butcher, and was made available for transfer in January 2014.
He combined his playing duties with coaching the development squads under Eddie May[41] and started the Scottish League Cup Final, which Hibs lost 2–1 to Ross County.
[42] After just six months back at Easter Road, Thomson signed for Tranent Juniors in June 2016, agreeing a two-year deal with the SJFA East Premier League side.