Le prime apparizioni di Oliveira in competizioni di rilievo risalgono al 2008, quando prende parte alla Red Bull MotoGP Rookies Cup, vincendo due gare e totalizzando 58 punti che gli valsero la dodicesima posizione nella classifica piloti.[1]
Si sposta nel campionato spagnolo della classe 125 nel 2009, anno in cui si classifica al terzo posto finale ottenendo quali migliori risultati tre secondi posti nelle singole gare.[2] Oltre al campionato spagnolo si classifica quinto nel campionato europeo in gara unica ad Albacete. Nel 2010 partecipa sempre al campionato spagnolo e sempre nella stessa classe classificandosi al 2º posto, preceduto di due punti da Maverick Viñales, pur avendo ottenuto 4 vittorie sulle 7 gare in programma;[3] alla fine dell'anno si aggiudica anche il secondo posto del campionato Europeo Velocità (disputato in gara unica sul circuito di Albacete), anche in questo caso preceduto da Viñales.[4]
Esordisce nella classe 125 del motomondiale nel 2011, ingaggiato dal team Andalucía Banca Civica; il compagno di squadra è Alberto Moncayo. Ottiene un settimo posto al GP di Spagna come miglior risultato e 44 punti iridati, anche se è costretto a saltare i Gran Premi di Gran Bretagna e Olanda per infortunio, e nelle ultime quattro gare di campionato viene sostituito da Brad Binder. Nel 2012 corre nella classe Moto3, ingaggiato dal team Estrella Galicia 0,0, che gli affida una Suter MMX3; il compagno di squadra è Álex Rins. Ottiene un secondo posto al GP d'Australia e un terzo posto al GP di Catalogna e conclude la stagione all'8º posto con 114 punti. Nel 2013 passa al team Mahindra Racing; il compagno di squadra è Efrén Vázquez. Ottiene un terzo posto al GP della Malesia e una pole position in Olanda e termina la stagione al 6º posto con 150 punti. Nel 2014 continua a correre in Moto3 con il team Mahindra Racing. Ottiene un terzo posto in Olanda e termina la stagione al 10º posto con 110 punti.
Nel 2015 lascia dopo due anni il team Mahindra Racing per passare al team Red Bull KTM Ajo. Ottiene la sua prima vittoria in Italia al Mugello, la prima volta che un portoghese riesce a conquistare una vittoria nel Motomondiale,[5] un'altra vittoria arriva al GP d'Olanda, tre secondi posti (nei GP di Spagna, di San Marino e del Giappone) e una pole position in Argentina. Vince i gran premi d'Aragona, Australia, Malesia e Valencia. In questa stagione è costretto a saltare il Gran Premio di Germania a causa della frattura del quarto metacarpo della mano sinistra rimediata nelle prove libere del GP. Chiude la stagione al secondo posto con 254 punti, staccato di sei punti dal campione del mondo Danny Kent.
Nel 2016 passa in Moto2 alla guida di una Kalex del team Leopard Racing, il suo compagno di squadra è Danny Kent. Ottiene come miglior risultato un ottavo posto in Catalogna e termina la stagione al 21º posto con 36 punti. In questa stagione è costretto a saltare i Gran Premi d'Aragona, Giappone, Australia e Malesia a causa di una frattura alla clavicola destra rimediata nelle prove libere del GP d'Aragona. Il suo posto in squadra, a partire dal Gran Premio d'Australia viene preso da Alessandro Nocco.[6]
Nel 2017 torna a correre per il team Red Bull KTM Ajo, con compagno di squadra Brad Binder. In occasione del Gran Premio d'Argentina ottiene la sua prima pole position in Moto2, che è anche la prima pole per KTM nella classe (finirà la gara secondo).[7] Ottiene poi due terzi posti (Spagna e Catalogna), un secondo posto in Germania e un terzo posto in Repubblica Ceca. In Aragona giunge terzo dopo essere partito dalla pole position. Vince in Australia, Malesia e Comunità Valenciana. Conclude la stagione al 3º posto con 241 punti. Nel 2018 rimane nello stesso team. Ottiene tre vittorie (Italia, Repubblica Ceca e Comunità Valenciana), cinque secondi posti (Spagna, Catalogna, Austria, San Marino e Malesia) e quattro terzi posti (Argentina, Americhe, Thailandia e Giappone) e termina la stagione al 2º posto con 297 punti.
Nel 2019 passa in MotoGP, alla guida della KTM RC16 del team Tech 3; il compagno di squadra è Hafizh Syahrin. Ottiene come miglior risultato un ottavo posto in Austria e termina la stagione al 17º posto con 33 punti. In questa stagione è costretto a saltare i Gran Premi d'Australia, Malesia e Comunità Valenciana a causa di un trauma alle mani rimediato nelle prove libere del GP d'Australia. Nel 2020 rimane nello stesso team, con compagno di squadra Iker Lecuona. Il 23 agosto vince la sua prima gara in MotoGP in Austria, al GP di Stiria, diventando il primo pilota portoghese a conquistare una vittoria nella classe regina.[8] In occasione del Gran Premio di Portogallo ottiene la sua prima pole position nella classe regina, vincendo anche la gara. Chiude la stagione al 9º posto con 125 punti.[9]
Nel 2021 è compagno del sudafricano Brad Binder nel KTM Factory Racing. Ottiene una vittoria in Catalogna[10] e due secondi posti (Italia e Germania) e chiude la stagione al quattordicesimo posto con 94 punti.[11] Nel 2022 continua con lo stesso team e lo stesso compagno di squadra dell'anno precedente. Nelle trasferte asiatiche, con condizioni meteo mutevoli, ottiene due vittorie al Gran Premio dell'Indonesia e al Gran Premio di Thailandia.[12][13] Chiude la stagione al decimo posto.[14]
Per la stagione 2023 lascia KTM per approdare al nuovo team satellite di Aprilia, ovvero RNF Racing, insieme a Raúl Fernández.[15] Pur rivelandosi da subito competitivo con la nuova moto, diversi infortuni ne compromettono il campionato.[16] Il quarto posto al Gran Premio di Gran Bretagna è il miglior risultato stagionale in gara mentre la classifica finale vede Oliveira al sedicesimo posto.[17]
Nella stagione 2024, RNF Racing lascia il Motomondiale ed il suo posto lo prende Trackhouse Racing che conferma la coppia di piloti dell'anno precedente.[18] Il primo punto arriva alla prima gara in Qatar, chiudendo quindicesimo.[19] La gara successiva, a casa sua in Portogallo centra la prima Top 10 stagionale, tagliando il traguardo in nona posizione.[20] I primi punti al sabato gli ottiene nella Sprint del Gran Premio di Spagna arrivando ottavo, risultato che riuscirà a bissare anche alla domenica.[21][22] Al Gran Premio di Germania, ottiene il suo primo podio Sprint in carriera, chiudendo secondo dietro solo ad Jorge Martín.[23] A settembre viene annunciato il suo passaggio per le successive due stagioni a Pramac Racing, team satellite di Yamaha.[24][25] Chiude il campionato in quindicesima posizione.[26]
^(ES) Classifica finale del CEV 2009 - Classe 125, su fimcevrepsol.com, FIM, 22 novembre 2009. URL consultato il 19 novembre 2018 (archiviato dall'url originale il 26 dicembre 2017).
^(ES) Classifica finale del CEV 2010 - Classe 125, su fimcevrepsol.com, FIM, 21 novembre 2010. URL consultato il 19 novembre 2018 (archiviato dall'url originale il 19 novembre 2018).
^(FR) Vincent Glon, Classifica del CEV 2010, su racingmemo.free.fr, Racingmemo, 24 ottobre 2010. URL consultato il 23 novembre 2024.