Born in
Grangemouth, the son of Alexander McWilliam, a post office engineer, he went to
Leith Academy. He later attended evening classes as a Post Office Telephones Youth in Training at
Heriot-Watt Technical College and
Napier College of Science and Technology. McWilliam joined the Labour party in 1966, and prior to his election he worked as a telephone engineer, Technician 2A, for British Telecom ==Parliamentary career==