In 2009 John joined the senior Warriors squad full-time and played for the Auckland Vulcans in the NSW Cup and Howick Hornets in the Auckland Rugby League competition. In mid-2009 the Warriors announced they had re-signed John until the end of the 2011 season with an option for 2012. In Round 19 of 2009 NRL season, John made his first grade début for the New Zealand Warriors against the Sydney Roosters at SFS at five-eighth in the Warriors 30–24 win. John played in 3 matches for the Warriors in his début year in the NRL in the 2009 NRL season.
2010
In Round 13 against the St George Illawarra Dragons at Mt Smart Stadium, John scored his first NRL career try in the Warriors 22–20 loss. John played in 5 matches, scored 1 try and kicked 1 field goal for the Warriors in the 2010 NRL season.
John played in 14 matches, scored 1 try and kicked 19 goals for the Wildcats in the 2012 Super League season. John was released from the club at the start of the 2013 season. John played for the Cook Islands in the 28–24 victory over Lebanon.
2013
On 25 February 2013, John signed with the Penrith Panthers on a one-year contract. John spent the early parts of the season playing for the Penrith feeder side, Windsor Wolves, before making his Penrith club début in Round 9 against the Melbourne Storm in the Panthers 12–10 victory at Penrith Stadium. In his next match in Round 10 against his former club the New Zealand Warriors at Penrith Stadium, John scored a hat trick in the Panthers 62–6 rampaging win. On 14 June 2013, John re-signed with the Panthers on a new two-year contract. John finished the 2013 NRL season with him playing in 16 matches and scoring 5 tries for the Panthers. John represented the Cook Islands in the 2013 World Cup, playing in all 3 matches at halfback and scoring a try in the tournament.
2014
In February 2014, John was selected in the Panthers inaugural 2014 Auckland Nines squad. John played in only three of the first eight matches, being behind Jamie Soward and Peter Wallace in the halves selection. John was a shock selections for the New Zealand national rugby league team test team squad against the Australia Kangaroos in the 2014 Anzac Test after Kieran Foran, Thomas Leuluai and Josh Hoffman were ruled out with injuries. Originally selected at five eighth, John was shifted to the interchange bench to have Tohu Harris to start at five-eighth, having John to début off the bench in the Kiwis 30–18 loss at SFS. A week after making his international début for New Zealand, John has had his season cut short by suffering a season ending anterior cruciate ligament knee injury while going down in a tackle in the Panthers NSW Cup win over the Newcastle Knights. John finished off the Panthers 2014 NRL season with him playing in 3 matches and scoring a try.
In 2016, John signed with the Manly Warringah Sea Eagles. He played in the Auckland Nines but didn't play an NRL Game that season
2017
In 2017, Mounties recruited John to play "park footy" expecting him to play in the NSW lower grades, Ron Massey Cup & even below. Instead John would turn out for their NSW Cup side for the season. This was John's last season of competitive rugby league.