Johnson played for the Hibiscus Coast Raiders in the Auckland Rugby League competition before being signed by the New Zealand Warriors in 2009.[5] Johnson started his professional career playing for the Junior Warriors in the Toyota Cup. In March 2009, league great Andrew Johns commented: "I haven't been this excited about a player in a long time." Johns was referring to the first time he saw Stacey Jones play, which was in 1995, when Stacey was a junior.[6] Johnson spent the 2009 and 2010 seasons with the Junior Warriors and played 45 matches, scoring 25 tries, 159 goals and 4 field goals to finish his Toyota Cup career with 422 points.[7] Johnson made his NSW Cup debut for the Auckland Vulcans in 2010 and also represented the Junior Kiwis that year.[8] His final Toyota Cup match was being part of the Junior Warriors winning the 2010 Grand Final.

On 13 February 2013, Johnson was chosen to play in the 2013 All Stars match for the NRL All Stars team, playing off the interchange bench in the 32–6 loss to the Indigenous All Stars at Suncorp Stadium.[19] For the 2013 Anzac Test, Johnson was selected to play halfback for New Zealand, kicking two goals from two attempts in their 32–12 loss against Australia at Canberra Stadium.[20] In Round 14 against the Sydney Roosters, Johnson chased down Michael Jennings after the latter picked up a loose ball and sprinted toward an undefended try line, Warriors later won the match 23–12 at SFS.[21] Johnson played in all the Warriors' 24 matches and scored 10 tries in the 2013 NRL season. Following the end of the season, Johnson was selected in New Zealand 2013 Rugby League World Cup squad.[22] In the Rugby League World Cup Semi Finals on 24 November against England at Wembley Stadium, after the game was locked-up at 8-all at halftime and England lead 18–14, with seconds to go in the game, Johnson scored the final try of the game in the 80th minute, stepping and sliding through a hole to level the score at 18-all and then converting his own try to seal the win and to cement the Kiwis' place in the World Cup final.[23] Following the Kiwis 34–2 World Cup Final loss to Australia at Old Trafford,[24] Johnson finished the tournament as the top points-scorer with 76 points (4 tries and 30 goals).

In February 2014, Johnson played in the Warriors inaugural NRL Auckland Nines squad and was the tournament's top point scorer with 40 points. He was named the tournament's most valuable player.[25] On 9 February 2015, Johnson re-signed with the Warriors on a 3-year contract to the end of the 2017 season.[26] He was selected for New Zealand in the 2014 Anzac Test against Australia at halfback and kicked 3 goals in the Kiwis 30–18 loss at the SFS.[27] By the end of the Warriors 2014 NRL season he had played in 21 matches, scoring 9 tries, kicking 63 goals and a field goal. On 7 October 2014, Johnson was selected in New Zealand's 2014 Four Nations squad.[28][29][30] On 15 November 2014, Johnson was instrumental in leading the Kiwi side to a 22–18 victory in the 2014 Four Nations final against Australia. He received the man of the match award after his performance, which included two assists and one try.[31] On 18 December 2014, Johnson won the Rugby League World Golden Boot Award for best player in the world, beating the likes of Sam Burgess, Johnathan Thurston and Greg Inglis.[32]

On 29 January, Johnson was named as the captain of the Warriors 2016 Auckland Nines squad,[37] On 6 May 2016, Johnson played for the New Zealand Kiwis against Australia, playing at halfback in the 16-0 loss at Hunter Stadium.[38] Shaun Johnson was part of the Four Nations 2016 New Zealand Kiwis side that made it to the Final of the tournament, losing to the Australian Kangaroos 34 - 8.

Shaun Johnson became New Zealand rugby league's greatest test points scorer as the Kiwis beat Scotland 74-6.
Johnson's second-half try broke Matthew Ridge's record of 168 points.
His 22-points total from the Rugby League World Cup match took him to 175 points.