Esordisce nella classe 125 del motomondiale al termine della stagione 2009 con la Loncin, in sostituzione di Alexis Masbou e con Tomoyoshi Koyama quale compagno di squadra, correndo gli ultimi cinque Gran Premi, senza ottenere punti. Nel 2010 passa al Racing Team Germany con una Aprilia RSA 125, ancora con compagno di squadra Koyama. Ottiene come miglior risultato un quinto posto in Repubblica Ceca e termina la stagione al 17º posto con 28 punti.
Nel 2011 passa al team Ongetta-Centro Seta, con compagno di squadra Harry Stafford. Ottiene come miglior risultato due settimi posti (Spagna e Repubblica Ceca) e termina la stagione al 12º posto con 72 punti. Nel 2012 rimane nello stesso team nella classe Moto3, alla guida di una FTR M312. Ottiene come miglior risultato un sesto posto in Repubblica Ceca e termina la stagione al 15º posto con 71 punti. Nel 2013 passa al team Redox RW Racing GP, che gli affida una Kalex KTM. Ottiene come miglior risultato un quinto posto in Spagna e termina la stagione all'11º posto con 68 punti. Nel 2014 passa al team Calvo, che gli affida una KTM RC 250 GP; i compagni di squadra sono Isaac Viñales e Eric Granado. Ottiene come miglior risultato tre quinti posti (Americhe, Gran Bretagna e Aragona) e termina la stagione al 12º posto con 97 punti.
Nel 2015 passa al team Drive M7 SIC, continuando a guidare una KTM; il compagno di squadra è Zulfahmi Khairuddin. Ottiene un secondo posto in Gran Bretagna[2] ed un terzo posto a Valencia. Chiude la stagione al dodicesimo posto con 89 punti. Nel 2016 rimane nello stesso team, questa volta alla guida di una Honda NSF250R; il compagno di squadra è Adam Norrodin. Ottiene un secondo posto in Malesia. Chiude la stagione all'ottavo posto in classifica piloti con 112 punti all'attivo. Nel 2017 rimane in Moto3 ma cambia squadra, passa infatti al team Peugeot MC Saxoprint dove trova, come compagno di squadra, il pilota finlandese Patrik Pulkkinen. Ottiene come miglior risultato un settimo posto nel Gran Premio di San Marino e termina la stagione al 22º posto con 26 punti.
Nel 2018 passa al team Redox PrüstelGP, che gli affida una KTM RC 250 GP; il compagno di squadra è Marco Bezzecchi. In occasione del Gran Premio della Repubblica Ceca ottiene la sua prima pole position nel motomondiale, in gara chiude al terzo posto, ottenendo il primo podio stagionale.[3] Conclude la stagione all'8º posto con 116 punti. Nel 2019 rimane nello stesso team, con compagno di squadra Filip Salač; ottiene un terzo posto in Olanda e chiude la stagione al 14º posto con 78 punti.
A gennaio del 2020 annuncia il suo ritiro dalle competizioni, ponendo pertanto fine alla sua carriera da pilota motociclistico professionista all'età di 26 anni.[4] Poi però viene ingaggiato dal team SIC Racing per correre in MotoE al posto di Bradley Smith, impegnato a sostituire in MotoGPAndrea Iannone, sospeso per doping. Chiude la stagione al 18º posto con 15 punti.[5]