Dennis begann seine Motorsportkarriere 2006 im Kartsport, in dem er bis 2010 aktiv blieb. Unter anderem wurde er 2009 Zweiter beim CIK-FIA-KF3-Weltcup. 2010 wurde er U18-Kartweltmeister. 2011 wechselte Dennis in den Formelsport und trat für Fortec Motorsport in der InterSteps Championship an. Mit acht Siegen aus 20 Rennen entschied er auf Anhieb den Titel für sich. Anschließend startete er für Fortec in der Winterserie der britischen Formel Renault. Dort erreichte er den 18. Rang.
2012 ging Dennis für Fortec Motorsport in der nordeuropäischen Formel Renault an den Start. Mit drei Siegen und insgesamt elf Podest-Platzierungen entschied er die Meisterschaft für sich. Darüber hinaus nahm er für Fortec an sechs Rennen des Formel Renault 2.0 Eurocups teil. Dabei gelang ihm ein zweiter Platz und er wurde Gesamtzwölfter. Für seine Leistungen im Jahr 2012 wurde Dennis mit dem McLaren Autosport BRDC Award ausgezeichnet. Als Prämie erhielt er eine Formel-1-Testfahrt bei McLaren.[1] 2013 fuhr Dennis durchgängig im Formel Renault 2.0 Eurocup. Mit einem zweiten Platz als bestem Ergebnis stand er einmal auf dem Podest. Als bester Fahrer, der kein Rennen gewonnen hatte, schloss er die Saison auf dem vierten Gesamtrang ab. In der nordeuropäischen Formel Renault fuhr er vier Rennen, wobei ihm ein Sieg gelang.
2014 wechselte Dennis zu Carlin in die europäische Formel-3-Meisterschaft.[2] Drei dritte Plätze waren seine besten Ergebnisse. Er beendete die Saison auf dem neunten Gesamtrang. 2015 ging Dennis in der europäischen Formel-3-Meisterschaft für das Prema Powerteam an den Start.[3] In Pau erzielte er bei jedem Rennen die Pole-Position und gewann zwei Rennen. Beim Grand Prix de Pau fiel er jedoch mit technischen Problemen zurück und blieb ohne Punkte.[4] In Spa-Francorchamps schaffte er es erneut, zwei Rennen zu gewinnen. Weitere Siege folgten in Spielberg und Portimão. Während sein Teamkollege Felix Rosenqvist die Meisterschaft gewann, verbesserte sich Dennis auf den dritten Gesamtrang. Im Anschluss an die Saison nahm er im Winter 2015/16 an einigen Rennen der MRF Challenge Formel 2000 teil.
2016 wechselte Dennis in die GP3-Serie zu Arden International. Er gewann zwei Rennen und beendete die Saison auf dem vierten Platz in der Meisterschaft. Darüber hinaus nahm er für den von Ardens Partnerteam Jota Sport betreuten Rennstall G-Drive Racing an zwei Rennen der FIA-Langstrecken-Weltmeisterschaft (WEC) teil.[5]