Chelsea Gordon came through the academy system at
Leeds United and was signed by
Chelsea from Leeds in 2007 for compensation. He progressed through the youth ranks at Chelsea, before graduating to the
reserves where he became a regular player.
Tranmere Rovers (loan) Gordon signed for
League One side
Tranmere Rovers on an initial one-month loan deal on 25 March 2010. 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. Gordon made four appearances for Rovers during his loan spell before returning to his parent club. 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. Manager
Mixu Paatelainen was encouraged by his performance in the game despite the defeat. 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. He was instrumental in a 2–1 victory over
Hibernian on 18 December, laying on two goals for
Liam Kelly. 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. 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, and had made 18 league appearances, scoring once, in addition to three
Scottish League Cup games. Due to the injury, he did not finally join up with Scunthorpe until 7 February. His eventual debut arrived on 12 February in a 1–0 away defeat to
Cardiff City. 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. 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. The deal was finally confirmed on 17 August, with Gordon due to stay with the Posh until 2 January 2012. 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. He also made a
League Cup appearance four days later, but lost the tie 2–0 at home to
Middlesbrough.
Second Kilmarnock loan spell Gordon returned to Kilmarnock for a second loan spell on 11 January 2012. 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. He made his second debut for the club in a 0–0 draw with
Aberdeen at
Pittodrie on 14 January. 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. In the summer of 2012, Gordon returned to Chelsea having made 20 further appearances for Killie. He made his debut on 25 August in a 2–0 loss at
Watford.
Yeovil Town Following his release from Chelsea in January 2013, Gordon played for
Hull City Reserves on trial. Shortly after, he signed a month-long contract with League One club
Yeovil Town on 11 March 2013, with a view to an extension.
Ross County After attracting attention from English clubs
Blackpool and
Notts County, 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. He made his debut in the opening game 2–1 defeat at Celtic on 3 August. 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. He ended the season with 27 Premiership appearances and played once in the League Cup. However, he decided to leave the club just ten days later, citing his desire to return to play in England.
Colchester United On 1 July 2014, Gordon signed a two-year contract with League One club
Colchester United. He made his debut for the club in the opening fixture of the
2014–15 season as Colchester held
Oldham Athletic to a 2–2 draw at the
Colchester Community Stadium. After falling out of favour under new manager
Tony Humes, having been ousted by loan signings, 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.
Non-league spells Gordon signed for
National League side
Chester on 30 October 2015, 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. Returning to his native
Bradford, Gordon signed for
National League North side
Bradford Park Avenue in March 2016. He made his debut as a substitute in the 3–1 win over
Harrogate Town on 28 March. 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. On 21 September, after failing to impress under manager
Garry Hill, Gordon made the switch back to the National League North to join
Boston United. Three days later, he made his debut in their 1–0 away victory against
Altrincham. 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. After appearing 23 times and scoring once for Boston in all competitions, On 1 September 2017, it was announced that Gordon had signed for Boston's county rivals
Gainsborough Trinity. However, after only featuring twice for Gainsborough, Gordon was released a month later. 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. In May 2019, he was announced as a new player for
Matlock Town. He made 25 appearances in the Northern Premier League Premier Division and a further 13 in cup competitions, He made 12 appearances in the
2020–21 season disrupted by the
COVID-19 pandemic, but left in October 2021 for divisional rivals
Yorkshire Amateur. Ahead of the 2022–23 campaign, Gordon made the move to
Northern Counties East League Premier Division side,
Eccleshill United. ==International career==