Weir played his amateur football with the London Lords. He had a 13-year career with the Alouettes from 1972 through 1984 (the 1982 to 1984 seasons were actually played with the Montreal Concordes.) He held the franchise record for most games with 203 until he was surpassed by Bryan Chiu in 2009. He played in 5 Grey Cup games, winning 2, in 1974 and 1977. He was the Grey Cup Most Valuable Player (defensive) in 1977. He was also a 5 time all star. He was inducted into the Canadian Football Hall of Fame in 2009.