 Born in Islington, London, O'Brien started his career in the youth system at Millwall and signed his first professional contract in 2010 on his 17th birthday.He made his debut for the club in the League Cup third round 5–0 defeat to Wolverhampton Wanderers, coming on as a substitute for Dany N'Guessan.On 1 January 2012, O'Brien signed for Conference South side Staines Town on a one-month loan.