Fa il suo esordio tra i professionisti nel 2010 in doppio nel circuito Challenger e nel 2012 in singolare nel circuito ITF. Nel 2013 vince i suoi primi titoli nel circuito ITF, tre in doppio e uno in singolare. Negli anni successivi continua a vincere nel circuito ITF soprattutto in doppio e nel giugno 2016 entra per la prima volta nella top 300 del ranking. In singolare disputa la sua migliore stagione nel 2014, quando vince un titolo ITF, raggiunge i quarti di finale nel Challenger di Siviglia e raggiunge il 403º posto mondiale, che rimarrà il miglior ranking in carriera. Disputa e perde la prima finale Challenger in doppio nell'agosto 2017 a Segovia, risultato che lo porta nella top 200.
Nel giugno 2018, alla sua terza finale Challenger, vince il primo titolo a Blois in coppia con Fabrício Neis, sconfiggendo in finale Hsieh Cheng-peng / Rameez Junaid. Nel giro di quattro mesi si aggiudica anche i tornei di doppio nei Challenger di Marburgo, Biella e Barcellona e in novembre raggiunge la 111ª posizione mondiale. Nel 2019 abbandona definitivamente i tornei ITF, disputa altre sei finali Challenger e vince quelle di Poznań e Barcellona. A giugno fa il suo esordio nel circuito maggiore sull'erba di 's-Hertogenbosch in coppia con Alex de Minaur, si spingono fino in semifinale sconfiggendo nei quarti le teste di serie nº 4 Rajeev Ram / Joe Salisbury e vengono sconfitti da Dominic Inglot / Austin Krajicek.
Il miglior risultato del 2020 è la semifinale disputata al Challenger di Praga 2, si mantiene comunque per tutta la stagione a ridosso della top 100. Torna al successo nel 2021 vincendo in febbraio un altro Challenger a Biella e a fine mese raggiunge la semifinale al torneo ATP di Singapore. A luglio conquista il primo titolo in un torneo del circuito maggiore a Umago assieme a Fernando Romboli, sconfiggendo in finale Tomislav Brkić / Nikola Ćaćić con il punteggio di 6-3, 7-5; con questo successo entra per la prima volta nella top 100, alla 98ª posizione mondiale. Nel corso della stagione vince nei Challenger anche i tornei di Siviglia e Alicante e perde altre quattro finali di categoria, chiudendo il 2021 all'89º posto del ranking.
Continua l'ascesa in classifica nei primi mesi del 2022 con i titoli Challenger conquistati assieme ad Albano Olivetti a Quimper e a Pau, ma soprattutto conquistando ad aprile il suo secondo titolo nel circuito maggiore a Marrakech, dove in coppia con Rafael Matos batte in due set in finale Jan Zieliński / Andrea Vavassori. Ancora con Matos perde la settimana successiva la finale al Challenger di Madrid e il 1º maggio quella al torneo ATP di Monaco di Baviera. Si riscattano due settimane dopo aggiudicandosi il Challenger 125 di Bordeaux; a fine torneo porta il best ranking alla 58ª posizione.