He turned professional in February 1930 when he joined Wolverhampton Wanderers. Albion broke their transfer record to secure his services, paying the £7,500 fee in two installments. He made his Albion debut the same month, against Liverpool at Anfield.
During the Second World War he continued to represent Albion, as well as making guest appearances for Nottingham Forest and Blackpool.
Shaw scored 14 goals in 251 competitive games for West Bromwich Albion. In 1947 he left the club to join Hereford United, where he played until his retirement in 1949.
He later refereed in the Oldbury & District leagues and worked as a scout for West Bromwich Albion. Shaw died in Handsworth, Birmingham in January 1977.