Cullen began his career with Leinster by representing them at schoolboy level in 1995 before moving on to their U20 team where he won 7 caps. He also made 5 appearances on the 'A' team and finally debuted on the senior team where he was part of the squad that won the Celtic League. He moved to Leicester Tigers in 2005 where he made 56 appearances, 15 as captain. He was a part of the squad that won the EDF Energy Cup and Guinness Premiership in 2007. He was also on the losing side in the 2007 Heineken Cup Final, when London Wasps defeated Leicester at Twickenham Stadium. He rejoined Leinster in 2007 and was part of the squad that won the 2007/2008 Magners League. On 26 August 2008, he was named as Leinster captain following Brian O'Driscoll stepping down from the role meaning he has captained most of the teams he has played on. He led Leinster to success in their first ever Heineken Cup in 2009, beating Leicester in the final. He also captained Leinster in 2011 to another Heineken Cup victory, and in 2012 became the 1st person to captain a team to three Heineken Cup victories.
Cullen has represented his country at all levels, 7 caps at schools level, then captaining the U19 team 3 times in 4 caps. He went on to captain the U21s 14 times in 16 appearances. He also appeared for the U25 team and has been capped 17 times at 'A' level where he captained the team against England. He made his senior debut against the All Blacks in Auckland in 2002, and was the 100th man to captain Ireland, against Scotland on the 6th of August 2011.