Born in Witbank, South Africa, Goodes emigrated to New Zealand with his family in 2006. Having attended Afrikaans Hoër Seunskool in Pretoria, he completed his schooling at Wellington College where he played first XV rugby for 3 years.
After graduating high school, he started playing for Poneke in Wellington's local club rugby competition.
He first played provincial rugby with Wellington during the 2010 ITM Cup, making a solitary appearance in a 20-11 victory over Tasman. Serving primarily as back-up to the more experienced Jacob Ellison through 2011, Goodes did manage to earn more game time, appearing in 7 matches with 5 of these appearances from the start. He only played 5 times during 2012, but was much more of a regular in 2013, featuring in 11 of the Lions 12 matches during a year which saw them finish as runner-up to Canterbury following a 29-13 defeat in the ITM Cup Premiership final.
At the age of 21 and with barely a season and a half of provincial experience under his belt, Goodes was named in the Hurricanes squad for the 2012 Super Rugby season.Despite being hindered by a shoulder injury sustained in a pre-season hit out against the Chiefs, he acquitted himself well during his debut season of Super Rugby, starting 4 times and playing 8 games in total. 12 more appearances, with all but one coming from the replacements bench, and a debut Super Rugby try followed in 2013 before he also spent large parts of the 2014 season as a bit part player.
He really started to establish himself as a regular for the 'Canes in 2015, starting 16 games and scoring 3 tries to help his franchise reach the Super Rugby final where they lost 21-14 at home to the Highlanders. The following year they were able to go one step further and lifted the Super Rugby title following a 20-3 victory over South African side, the Lions. He played 13 times and helped himself to another 3 tries, however he was forced to sit out the final stages of the season following a head injury received in a match against the Crusaders.
Goodes did not play any Super Rugby matches in 2017 due to an ongoing problem with concussions, and he retired in February 2018, aged 26, for the same reason