O'Neill started his career with amateur club Queens Park, before signing for Celtic in 1994. In his career he had two spells of playing for Dumfries club Queen of the South. O'Neill scored in the 2002 Scottish Challenge Cup Final victory against Brechin City.
O'Neill also made a substitute appearance for Queens in the 2008 Scottish Cup Final against Rangers, which turned out to be his last appearance for the club. He was also a penalty kick specialist at Queens, scoring 27 goals from 29 attempts. In total he scored 70 goals for Queens in competitive first team fixtures.
In the summer of 2008 O'Neill signed for Stirling Albion as a player and was also appointed assistant manager. After manager Allan Moore left for Morton, O'Neill was appointed the new manager of Stirling Albion in May 2010. After winning only three league games in the 2010–11 season, however, O'Neill was sacked in January 2011.
After being sacked by Stirling, he went junior with Auchinleck Talbot.