Born in Derry, Shields was a Northern Ireland youth international. He started his professional career in Belfast with and was part of the side which claimed their first major honour, the 1953 Ulster Cup. He moved to England in March 1954 when was signed by Sunderland but failed to break into their first team
In July 1956 he moved to the south coast to join Southampton for a fee of £1,000 which was funded by the Saints Supporters Club.
He was the first signing of "Saints"" newly appointed manager Ted Bates, having set the deal up on his way to Scotland for a holiday. Described by Holley & Chalk as a "strong, forceful forward" he was selected for the Northern Ireland team for a match against Scotland on 7 November 1956.
He scored on his "Saints" debut on 18 August 1956 and scored eleven goals in the opening twelve matches. The goals then dried up somewhat, until a flurry of four in the final four matches.
Over the season he was almost a match for fellow striker Derek Reeves scoring a total of 18 league goals as Saints narrowly missed out on promotion from Football League Third Division South.
A broken leg suffered in a reserve match in September 1957 resulted in Shields missing the entire 1957-1958 season. He played just three times in 1958-1959 before leaving Southampton for Headington United of the Southern League in March 1959. In 1961 he returned to the north east where he played for South Shields whilst resuming his original career as a joiner.