Born in Glasgow, Ruddy was on the books of hometown team Rangers from the age of seven to twelve, being coached by Andy Goram, before emigrating to Murcia in Spain in 2010. At the age of fifteen, after impressing for Torre Pacheco, he signed a contract for Real Murcia.[3] Ruddy went on trial with Villarreal, but he was unable to sign a professional contract with any Spanish club due to a regulation requiring young players to have resided in Spain for at least five years.[4]
Bury
On 30 July 2014, Ruddy returned to the United Kingdom, signing for Bury.[5] He was first featured in a matchday squad on 8 November, remaining an unused substitute for their 3–1 win over Hemel Hempstead Town at Gigg Lane in the first round of the FA Cup.[6] Ruddy was first included in a league game on 28 December, again remaining on the bench in a 2–0 League Two triumph of the same score against Mansfield Town, repeating the feat four times as the team earned promotion to League One.[7] Ruddy made his professional debut on 14 November 2015, playing the full 90 minutes of a 3–1 League One loss at Gillingham[8] in what turned out to be his only first team appearance for Bury.
Wolverhampton Wanderers
On 29 August 2016 Ruddy signed for Championship club Wolverhampton Wanderers on a two-year deal, with the option of a further year, for an undisclosed fee.[9] He was named on the bench once over the season, for a 3–1 loss at Derby County on 29 April 2017.[10] In December 2017, he extended his contract until the end of the 2019–20 campaign.[11]
Ruddy was one of nine Wolves youngsters loaned to Spanish Segunda División B team FC Jumilla in August 2018.[14] He made four appearances and was sent off at the end of his last game, a 2–2 draw at CD El Ejido, for insulting the referee.[15] On 1 February 2019, he joined S.S. Reyes of the same league until the end of the season.[16]
Ruddy was released by Wolves during the 2019 close season.[17]
After Wolves
Ruddy signed a six-month contract with Ross County in July 2019.[17] Unused, he was released in January 2020,[18] and returned to Spain to sign for CD Leganés B.[19]
On 6 September 2020, Ruddy signed a short-term contract with League One club Plymouth Argyle until January 2021, having successfully completing a trial.[20] Signed due to Luke McCormick's shoulder injury, he played two EFL Trophy games and sat on the bench for league games as Michael Cooper played. His deal was then expanded until the end of the season.[21]
After being released from Plymouth, Ruddy signed in June 2021 for Linfield, reigning champions of the NIFL Premiership.[22]
Ruddy left Linfield by mutual consent on 31 January 2022
Ruddy was called up for the Scottish under-19 team in September 2015 for a friendly tournament in Germany the following month; he was the only member of the squad playing outside the top two divisions of English or Scottish football.[26] He earned his only cap at that level on 9 October in a 2–2 draw with the United States in Reutlingen.[27]