Gordon came through the academy system at Leeds United and was signed by Chelsea from Leeds in 2007 for compensation.[3] He progressed through the youth ranks at Chelsea, before graduating to the reserves where he became a regular player.[4]
Tranmere Rovers (loan)
Gordon signed for League One side Tranmere Rovers on an initial one-month loan deal on 25 March 2010.[4] Rovers' manager Les Parry brought Gordon in to help beat off the threat of relegation, replacing regular left-backs Zoumana Bakayogo and Aaron Cresswell who were both suspended.[5] He made his Football League debut for the club two days later when they fell to a 3–0 away defeat at Brighton & Hove Albion.[6] Gordon made four appearances for Rovers during his loan spell before returning to his parent club.[7]
Kilmarnock (loan)
Scottish Premier League club Kilmarnock signed Gordon on a short-term loan deal on 5 August 2010.[8] He made his debut on the opening day of the season on 14 August as Killie fell to a 2–1 away defeat to Rangers.[9] Manager Mixu Paatelainen was encouraged by his performance in the game despite the defeat.[10] He scored his first professional goal on 10 November 2010 as Kilmarnock earned a third consecutive Premier League win against Hamilton Academical. Gordon opened the scoring with a curling shot into the top corner midway through the first half.[11] He was instrumental in a 2–1 victory over Hibernian on 18 December, laying on two goals for Liam Kelly.[12] His impressive form for Killie saw him and other in-form players linked with moves away from the club prior to the January transfer window.[13]
Gordon's loan spell was ended prematurely by his parent club on 3 January 2011; he had been a key member of Paatelainen's team that held fourth position in the Scottish Premier League. The club cited that they would prefer Gordon to play the second half of the 2010–11 season on loan in England. He had hoped to extend his stay with Kilmarnock. He left the Ayrshire club on the back of a ten-game run which included seven wins and two draws,[14] and had made 18 league appearances, scoring once, in addition to three Scottish League Cup games.[15]
Scunthorpe United (loan)
Chelsea sent Gordon out on loan just three days after his return from Kilmarnock. He joined Championship strugglers Scunthorpe United until the end of the season. However, his debut was delayed due to a hamstring injury he had collected while on loan with Kilmarnock.[3] The announcement followed Gordon signing a two-and-a-half-year extension with Chelsea.[16] Due to the injury, he did not finally join up with Scunthorpe until 7 February.[17][18] His eventual debut arrived on 12 February in a 1–0 away defeat to Cardiff City.[19] Scunthorpe eventually ended the season bottom of the Championship and relegated to League One. Gordon made 14 league appearances during his stint at the club.[15]
Peterborough United (loan)
On 18 July 2011, it was leaked that Peterborough United were interested in signing Gordon from Chelsea.[20] Further to this, it was confirmed that a deal was in place to sign an unnamed England under-20 left-back once the player returned from international duty.[21] The deal was finally confirmed on 17 August, with Gordon due to stay with the Posh until 2 January 2012.[22] He made his only league appearance for the club as a 57th-minute substitute for Mark Little in their 7–1 rout of Ipswich Town on 20 August.[23] He also made a League Cup appearance four days later, but lost the tie 2–0 at home to Middlesbrough.[24] Finding his chances limited, Gordon returned from his loan spell in late September.[25]
Second Kilmarnock loan spell
Gordon returned to Kilmarnock for a second loan spell on 11 January 2012.[26] He revealed how Chelsea manager André Villas-Boas persuaded him to return to Scotland in an attempt to force his way into the Blues' first team on the completion of the loan.[27] He made his second debut for the club in a 0–0 draw with Aberdeen at Pittodrie on 14 January.[28]
Gordon helped the club to their first ever Scottish League Cup win as they defeated Celtic 1–0 in the 2012 Scottish League Cup Final at Hampden Park on 18 March, earning his first silverware as a player.[29] In the summer of 2012, Gordon returned to Chelsea[30] having made 20 further appearances for Killie.[24]
Birmingham City (loan)
Birmingham City signed Gordon on a six-month loan from Chelsea on 10 August 2012.[31] He made his debut on 25 August in a 2–0 loss at Watford.[32] This was to be his solitary league appearance, though he did feature in Birmingham's 3–2 extra time loss to Coventry City in the League Cup on 29 August.[33][32] On his return to Chelsea in January 2013, Gordon was released by the club without making a single first-team appearance.[34]
Yeovil Town
Following his release from Chelsea in January 2013, Gordon played for Hull City Reserves on trial.[35] Shortly after, he signed a month-long contract with League One club Yeovil Town on 11 March 2013, with a view to an extension.[34] Gordon made his debut for Yeovil the following day, featuring for 67 minutes in a 2–2 draw with Crawley Town, his first game in over six months. He assisted the opening goal, crossing in for Byron Webster to head home after five minutes, before being substituted for Dominic Blizzard.[36][37] Gordon played just two more games for Yeovil, coming on as a substitute in both the 2–0 home defeat to Swindon Town on 19 March, and the 3–3 away draw with Carlisle United on 23 March.[37] He left the club on 14 April following the expiry of his deal.[38]
Ross County
After attracting attention from English clubs Blackpool[39] and Notts County,[40] and failing to secure a long-term contract with Yeovil, Gordon returned to Scotland, this time with Ross County in the newly established Scottish Premiership. He signed a one-year deal on 27 June 2013.[41] He made his debut in the opening game 2–1 defeat at Celtic on 3 August.[42] Gordon's only goal for the club was Ross County's second as they fought back from a 3–1 deficit to draw 3–3 with Partick Thistle on 11 January 2014.[43] He ended the season with 27 Premiership appearances and played once in the League Cup.[37]
It was reported on 17 June 2014 that Gordon had signed a one-year contract extension with the Dingwall club.[44] However, he decided to leave the club just ten days later, citing his desire to return to play in England.[45]
After falling out of favour under new manager Tony Humes, having been ousted by loan signings,[citation needed] Gordon earned a recall on 20 December having been out of league action since early October. He helped his side to a 1–0 victory over his former club Yeovil Town.[48] Gordon was again left out after the loan signing of Matthew Briggs in February 2015, and after Colchester signed Briggs on a permanent basis in the summer of 2015, Gordon was allowed to move on to find a new club. His contract was terminated by mutual consent on 1 July 2015.[49]
Non-league spells
Gordon signed for National League side Chester on 30 October 2015,[50] but he was released in January 2016 having failed to make a league appearance for the club. He had only made the bench on three occasions in the National League, although he did make an appearance in the Cheshire Senior Cup in a 10–1 win over Winsford United in November.[51]
On 27 July 2016, Gordon joined National League club Woking on a one-year deal.[54] On 6 August, he made his Woking debut in a 3–1 home defeat against Lincoln City, being replaced in the 78th minute by fellow new signing Max Kretzschmar.[55]
On 21 September, after failing to impress under manager Garry Hill,[citation needed] Gordon made the switch back to the National League North to join Boston United.[56] Three days later, he made his debut in their 1–0 away victory against Altrincham.[57] Gordon's first goal for Boston tied the scores after 15 minutes of their 3–1 victory at home to Curzon Ashton on 20 December.[58] After appearing 23 times and scoring once for Boston in all competitions,[59] Gordon was released at the end of the 2016–17 campaign.[60]
On 1 September 2017, it was announced that Gordon had signed for Boston's county rivals Gainsborough Trinity.[61] However, after only featuring twice for Gainsborough, Gordon was released a month later.[62] He joined Northern Premier League Premier Division club Shaw Lane, where he played regularly for the rest of the 2017–18 season, before re-signing for Gainsborough Trinity for 2018–19.[63]
In May 2019, he was announced as a new player for Matlock Town.[64] He made 25 appearances in the Northern Premier League Premier Division and a further 13 in cup competitions,[65] and then dropped a division to join Pontefract Collieries in August 2020.[66] He made 12 appearances in the 2020–21 season disrupted by the COVID-19 pandemic,[67] chose to stay on for the 2021–22 campaign,[68] but left in October 2021 for divisional rivals Yorkshire Amateur.[69]