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. 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 September 2014. Following the 2016 Assembly Election William was appointed as the Deputy Chair of the Infrastructure Committee.
Currently, in the NI Assembly, William sits on the Agriculture Environment and Rural Affairs Committee and the Committee for Procedures of the House.