A member of Kilmarnock's under-20 squad O'Hara made his first team debut on 28 August 2012, coming on as a 13th-minute substitute in a Scottish League Cup match against Stenhousemuir, replacing the injured Jeroen Tesselaar in a 2–1 defeat.
[8] Upon signing for Dundee, he was moved into an attacking midfield position by manager Paul Hartley, who said he didn't know why O'Hara had previously been playing as a defender.
[12] Following Paul Hartley's departure from Dundee, O'Hara scored in new manager Neil McCann's first match in charge, a 3–2 win against Motherwell.
[14] He started his career at London Road in goalscoring form, netting three goals in his first two games in League One against Bristol Rovers and Rochdale.
[15] Fourteen starts and eight sub appearances followed in the first half of the 2018–19 season, but the end of manager Steve Evans' tenure at the club coincided with a loan move to League Two side Lincoln City.