Nel 2009 vince insieme a Matteo Donati il doppio al prestigioso torneo internazionale Les Petits As riservato agli under-14. Gioca nell'ITF Junior Circuit tra il 2009 e il 2013, vince il primo torneo in singolare nel 2010 e collezionerà in totale da juniores 7 titoli in singolare e 7 in doppio. Nel gennaio 2012 si aggiudica in singolare l'Abierto Juvenil Mexicano, l'unico torneo vinto di Grade A, con il quale raggiunge il 9º posto del ranking mondiale juniores. Il miglior risultato nelle prove juniores del Grande Slam è la semifinale raggiunta in doppio all'Australian Open 2013.[2]
Il primo titolo in singolare arriva nel marzo 2015 all'ITF Israel F2 di Herzliya con il successo in finale sul ceco Michal Konecny. Dopo aver vinto altri due titoli Challenger in doppio, nel novembre 2016 vince il suo primo torneo in singolare del circuito Challenger agli Internazionali Tennis Val Gardena Südtirol, battendo in finale Alessandro Giannessi per 6-4 6-1.
L'esordio in un tabellone di una prova del Grande Slam è al Roland Garros del 2017, supera le qualificazioni e vince al primo turno contro Miša Zverev in quattro set. Al turno successivo viene sconfitto in tre set da Diego Schwartzman. A fine torneo porta il miglior ranking al 152º posto mondiale. Al 2023, la vittorie contro Isner / Querrey in doppio nel 2015 e quella contro Zverev nel 2017 risultano le uniche che ha conseguito nel circuito ATP.
Nell'inverno del 2021 ingaggia come allenatrice provvisoria, in preparazione dei tornei ATP Challenger Tour 2021 che verranno disputati a Biella, la vincitrice del Roland Garros 2010 Francesca Schiavone.[5] Non trovano un accordo per continuare la collaborazione e Schiavone inizia ad allenare Petra Martić.[6]
Vince il suo secondo torneo Challenger in singolare nel febbraio 2024 al Bengaluru Open sconfiggendo in rimonta nella finale il sudcoreano Hong Seong-chan. Ad aprile vince la finale anche all'Open Comunidad de Madrid contro Leandro Riedi e porta il best ranking alla 125ª posizione, migliorando la 152ª raggiunta nel 2017. Raggiunge per la prima volta il terzo turno in un torneo ATP il mese dopo agli Internazionali d'Italia ed esce di scena costringendo al terzo set il finalista del torneo Nicolas Jarry.