Born in Johannesburg, South Africa, O'Brien started his career at Scottish club St Mirren, where he progressed through the youth ranks, before making his debut as a 16-year-old during season 1997–98. After only just reaching double figures in appearances for the first-team, he was sold to Blackburn Rovers for a fee of around £300,000 in 1999. O'Brien moved back on loan for the rest of the season, and scored his first and only goal for St Mirren with a free-kick against Hamilton Academical. He made only one first-team appearance for Blackburn Rovers during his time at Ewood Park in an English League Cup match against Portsmouth before leaving the club for Livingston in 2002. O'Brien blamed his lack of first-team action on a clause in his contract, saying that a league appearance would mean Blackburn had to pay St Mirren an extra £300,000.
Livingston
In September 2002, O'Brien moved back to Scotland after Scottish Premier League side Livingston agreed a deal to sign him and his teammate David McNamee from Blackburn Rovers. In 2004, he helped Livingston to their first major national honour by becoming an integral part of the Scottish League Cup winning side on 14 March 2004. O'Brien's excellent form for Livingston saw him attract interest from other clubs such as Aberdeen, Hearts and clubs south of the border. In total he made 119 league appearances for Livingston in all competitions and scored 16 goals.
Sheffield Wednesday
On 14 July 2005, O'Brien signed for English Championship side Sheffield Wednesday on a three-year contract after the midfielder rejected a new contract offer from Livingston. He scored his first goal for the club on 18 March 2006 in a 2–0 home win against Preston North End. He featured strongly in his first season at the club making 47 appearances in all competitions, but played less the following season after manager Paul Sturrock left, making only 22 appearances. He made 35 appearances in season 2007–08, but he was released at the end of the season after the expiry of his three-year contract.
Falkirk
O'Brien returned to Scotland once more by signing for Falkirk. He scored his first and what turned out to be only Falkirk goal in a 4–1 win over Hamilton on 27 September 2008. He spent three seasons at Falkirk before being released in 2011.
Return to Livingston
After a one-year absence from the game, O'Brien spent a trial period with Airdrie in August 2012. Despite the North Lanarkshire club keen to secure his services, O'Brien moved on and returned to his former club Livingston. Initially, O'Brien played as a trialist in the club's reserve matches to regain his fitness before signing a short-term contract on 22 November 2012. He made his second debut for Livingston on 17 November 2012 in a 2–1 home win over his former club Falkirk. After the expiry of his contract at the end of December 2012, he signed on again until the end of the season. A stand out performer for the club during his first season back, he was voted Livingston's 2012–13 Player's Player of the year. On 4 June 2013, O'Brien signed a new two-year contract with the club, keeping him at Almondvale until the summer of 2015.
Alloa & Cowdenbeath
After three seasons with Livingston, O'Brien transferred to Scottish Championship rivals Alloa Athletic in June 2015 where he spent one season before moving to Scottish League Two side Cowdenbeath. After a season with Cowdenbeath, O'Brien announced his retirement from football at the end of the 2016–17 season.
Coaching career
After attaining his UEFA B Licence, O'Brien took up the role of youth coach with Cowdenbeath in February 2017, whilst also continuing in his playing role for the club.
International career
O'Brien was capped at under-21 level for Scotland. His application to switch nationalities in order to represent South Africa was rejected by FIFA in 2005, as he was too old to apply.