Novák, der für den Dukla Liberec startet, trat erstmals international im Februar 2013 beim Europäischen Olympischen Winter-Jugendfestival 2013 in Erscheinung. Dort belegte er den 41. Platz im Sprint, den 32. Rang über 7,5 km klassisch und den zehnten Platz über 10 km Freistil. Im März 2013 lief er in Kremnica erstmals im Slavic Cup und errang dabei den 24. Platz im 15-km-Massenstartrennen und den 23. Platz im Sprint. Bei den Nordischen Junioren-Skiweltmeisterschaften 2014 im Fleimstal gelang ihn der 69. Platz im Skiathlon. Im folgenden Jahr kam er bei den Nordischen Junioren-Skiweltmeisterschaften 2015 in Almaty auf den 43. Platz über 10 km Freistil und auf den 16. Rang im Skiathlon. In der Saison 2015/16 debütierte er in Nové Město im Skilanglauf-Weltcup und erreichte dabei den 54. Platz über 15 km Freistil. Bei den Nordischen Junioren-Skiweltmeisterschaften 2016 in Râșnov belegte er den 33. Platz im Sprint, den 12. Platz über 15 km Freistil und den achten Platz über 10 km klassisch. Zu Beginn der Saison 2016/17 beendete er die Weltcup Minitour in Lillehammer auf dem 67. Platz. Seine besten Platzierungen beim Saisonhöhepunkt den Nordischen Skiweltmeisterschaften 2017 in Lahti waren der 36. Platz im 50-km-Massenstartrennen, der 12. Rang zusammen mit Aleš Razým im Teamsprint und der 11. Platz mit der Staffel. Im März 2017 holte im Sprint in Harrachov seinen ersten Sieg im Slavic-Cup. Zu Beginn der Saison 2017/18 errang er beim Ruka Triple den 56. Platz und holte bei der Tour de Ski 2017/18, die er auf dem 39. Platz beendete, mit dem 29. Platz im Sprint in Lenzerheide seine ersten Weltcuppunkte. Bei den Olympischen Winterspielen 2018 in Pyeongchang lief er auf den 60. Platz im Sprint, auf den 46. Rang über 15 km Freistil und auf den neunten Platz mit der Staffel. Beim Weltcupfinale in Falun kam er auf den 51. Platz.
Im folgenden Jahr holte Novák bei den U23-Weltmeisterschaften in Lahti die Silbermedaille über 15 km Freistil. Seine besten Ergebnisse bei den Nordischen Skiweltmeisterschaften 2019 in Seefeld in Tirol waren der 36. Platz im 50-km-Massenstartrennen und der 11. Rang mit der Staffel. In der Saison 2020/21 belegte er den 38. Platz beim Ruka Triple und den 24. Rang bei der Tour de Ski 2021 und erreichte damit den 34. Platz im Gesamtweltcup und den 13. Rang im Sprintweltcup. Seine besten Ergebnisse bei den Nordischen Skiweltmeisterschaften 2021 in Oberstdorf waren der 23. Platz im Sprint und der achte Rang zusammen mit Luděk Šeller im Teamsprint. In der folgenden Saison kam er im Weltcup dreimal unter die ersten Zehn und errang bei der Tour de Ski 2021/22 den 28. Platz. Beim Saisonhöhepunkt, den Olympischen Winterspielen 2022 in Peking, nahm er an fünf Rennen teil. Seine besten Platzierungen dabei waren der 18. Platz im Skiathlon und der 12. Rang mit der Staffel. Die Saison beendete er auf dem 23. Platz im Gesamtweltcup.
Teilnahmen an Weltmeisterschaften und Olympischen Winterspielen
Olympische Spiele
2018 Pyeongchang: 9. Platz Staffel, 46. Platz 15 km Freistil, 60. Platz Sprint klassisch
2022 Peking: 12. Platz Staffel, 14. Platz Teamsprint klassisch, 18. Platz 30 km Skiathlon, 23. Platz Sprint Freistil, 50. Platz 15 km klassisch
Nordische Skiweltmeisterschaften
2017 Lahti: 11. Platz Staffel, 12. Platz Teamsprint klassisch, 36. Platz 50 km Freistil Massenstart, 44. Platz Sprint Freistil
2019 Seefeld in Tirol: 11. Platz Staffel, 17. Platz Teamsprint klassisch, 21. Platz 30 km Skiathlon, 36. Platz 50 km Freistil Massenstart, 37. Platz Sprint Freistil, 39. Platz 15 km klassisch
2021 Oberstdorf: 8. Platz Teamsprint Freistil, 11. Platz Staffel, 23. Platz Sprint klassisch, 24. Platz 50 km klassisch Massenstart, 35. Platz 15 km Freistil
2023 Planica: 4. Platz Sprint klassisch, 9. Platz Teamsprint Freistil, 12. Platz 15 km Freistil