Ferguson made his senior debut for Hamilton Academical on 20 January 2018. He became a regular in the Hamilton team in the latter part of the 2017–18 season. With his contract due to expire at the end of that season, Ferguson signed a pre-contract agreement with Aberdeen in May 2018. He was one of seven first-team players released by Hamilton at the end of the 2017–18 season.