Waterston was born in Musselburgh, East Lothian and started his football career at Musselburgh Bruntonians in 1922 before moving to England to join Leicester City in July 1923. He was unable to break into the first team at Filbert Street and returned to Scotland to join Cowdenbeath in 1926.
The following year, he joined Welsh club Newport County, then playing in the Football League Third Division South. At Newport, he scored goals at a prolific rate and in a season and a half, he scored 36 goals in 44 league matches. This form attracted him to Southampton of the Second Division, whom he joined in December 1928 for a transfer fee of £300.
At The Dell, he was used as cover for Willie Haines and Dick Rowley and in his six months on the south coast, he was only selected six times, scoring once (against Hull City) and he was sold to Tranmere Rovers in the summer of 1929.
Waterston spent one season with Tranmere Rovers, scoring 18 goals in 30 appearances in the Third Division North. Despite this, at the end of the season he was released and, in October 1930, he applied for a trial at another Third Division North club, Southport.
His arrival at Haig Avenue marked the turning point in Southport's season and his "skill and scoring power inspired the team". He opened his goal-scoring account on 1 November against Doncaster Rovers which was the start of a run of seven consecutive victories. Waterston scored a hat-trick in his next match, at Gateshead on 8 November and topped this with five goals in an 8–1 victory over Nelson on New Year's Day, 1931. Waterston ended the season having scored 31 goals in 29 appearances, as Southport finished fifth in the table.
In the FA Cup, his goals helped the club defeat First Division Blackpool and reach the Sixth Round for the first and only time in the club's history. In the sixth round (quarter-final) match at Everton's Goodison Park, Southport conceded seven goals before half time and ended up losing 9–1 with Waterston scoring the consolation goal. Dixie Dean scored four of Everton's goals.
The following season was not so prolific for Waterston, only managing 13 league goals and in July 1932 he moved on to Doncaster Rovers.
His first season at Rovers saw him scoring 24 goals in 36 League games including two hattricks. He played every match until an injury in April put him out for the rest of the season. The following season Waterston was injured after just two games and struggled to make the first team after then, making just 7 League appearances, though still scored 3 goals. In his two seasons at Belle Vue, he played in 48 League and Cup games, scoring 29 goals.
After two years at Doncaster, he moved back to Hampshire to join Aldershot where he remained for one season, before returning to his home town with Edinburgh City.
Waterston ended his football career in 1935 after which he was employed at Brunton's Wool Mill in Musselburgh as a foreman in the dye department.