William has served as a Councillor within Armagh City & District Council since 2005. In Armagh City and District Council he is an Executive member and is involved in various other statutory committees within the Council.
William has represented the people of Newry and Armagh as an Assembly member since 2005 and was successfully returned in 2011. He served as the Deputy Chair of the Committee for Culture, Arts and Leisure and a member of the Agriculture and Rural Development Committee before being appointed as Chair of the Agriculture Committee in September2014. Following the 2016 Assembly Election William was appointed as the Deputy Chair of the Infrastructure Committee.
Since 2020, William has been the deputy chair of the Standards and Privileges Committee and on the committee for Agriculture, Environment and Rural Affairs. He is currently involved in an All-Party Group concerning Visual Impairment.