Born in Barnsley Rose signed his first professional contract with hometown club Barnsley in March 2011, alongside Jordan Clark. He made his senior debut in the Football League on 25 April 2011, in a 2–2 draw at home to Doncaster Rovers. He scored his first goal for Barnsley against Burnley in the FA Cup on 5 January 2013. He scored the winning goal two minutes after coming on as a substitute. He scored his first league goal for the club on 19 January 2013, rescuing a late point for Barnsley in a 1–1 draw against Ipswich Town.
On 27 March 2014, Rose joined League Two side Bury on loan. He was recalled by Barnsley on 22 April 2014. He re-joined Bury on loan, with a view to a permanent contract, on 15 August 2014. He signed permanently for Bury three days later, signing a three-year contract on 18 August 2014.
In May 2016 Rose signed for Nottinghamshire club Mansfield Town. He scored on his debut in a 3–2 win over Newport County on 6 August 2016. In June 2019 he was linked with a transfer away from Mansfield.