Hoffman nahm bis 2011 vorwiegend an Wettbewerben der US Super Tour und des Nor-Am-Cup teil. Sein erstes Weltcuprennen lief er im Januar 2009 in Vancouver, welches er mit dem 25. Platz im Skiathlon beendete und damit auch seine ersten Weltcuppunkte gewann. Seine besten Platzierungen bei den nordischen Skiweltmeisterschaften 2011 in Oslo waren der 14. Platz in der Staffel und der 29. Platz über 5 km klassisch. Bei den US-amerikanischen Skilanglaufmeisterschaften 2011 in Rumford gewann er Bronze über 30 km Freistil. Bei den US-amerikanischen Skilanglaufmeisterschaften 2012 in Rumford holte er Gold über 30 km klassisch. Bei den U23-Weltmeisterschaften 2012 in Erzurum gewann er Silber über 15 km klassisch. In der Saison 2012/13 belegte er mit dem achten Platz in Canmore erstmals eine Top-Zehn-Platzierung im Weltcup. Er nahm an der Tour de Ski 2012/2013 teil, die er auf den 46. Platz abschloss. Bei den nordischen Skiweltmeisterschaften 2013 im Val di Fiemme belegte er den 15. Platz über 15 km Freistil. Zu Saisonbeginn der Weltcupsaison 2013/14 erreichte er bei der Nordic Opening in Kuusamo den neunten Platz und gewann dabei das 15-km-Verfolgungsrennen. Den 24. Platz holte er bei der Tour de Ski 2013/2014. Seine besten Platzierungen bei den Olympischen Winterspielen 2014 in Sotschi waren der 26. Platz über 50 km Freistil und der 14. Platz mit der Staffel. Die Weltcupsaison beendete er auf dem 35. Platz in der Gesamtwertung, sein bisher bestes Ergebnis in der Weltcupgesamtwertung. Bei den US-amerikanischen Skilanglaufmeisterschaften 2014 in Kincaid Park holte er Silber über 50 km klassisch. Seine besten Platzierungen bei den nordischen Skiweltmeisterschaften 2015 in Falun waren der 31. Platz im 50-km-Massenstartrennen und der 11. Rang mit der Staffel. Nach Platz 52 bei der Nordic Opening in Ruka zu Beginn der Saison 2015/16, belegte er den 22. Platz bei der Tour de Ski 2016 und den 34. Rang bei der Ski Tour Canada. Im September 2016 siegte er beim Merino Muster und belegte beim Australia/New Zealand Cup in Snow Farm den dritten Platz im 15-km-Massenstartrennen. Im Winter 2016/17 belegte er den 36. Platz bei der Weltcup-Minitour in Lillehammer und den 26. Rang bei der Tour de Ski 2016/17. Beim Saisonhöhepunkt den nordischen Skiweltmeisterschaften 2017 in Lahti errang er den 57. Platz im Skiathlon und den 50. Platz im 50-km-Massenstartrennen. Zum Saisonende kam er beim Weltcup-Finale in Québec auf den 52. Platz und erreichte den 51. Platz im Gesamtweltcup. Seine besten Platzierungen bei den Olympischen Winterspielen 2018 in Pyeongchang waren der 33. Platz im 50-km-Massenstartrennen und der 14. Rang mit der Staffel.
Teilnahmen an Weltmeisterschaften und Olympischen Winterspielen