Jugó cuatro temporadas con los Spartans de la Universidad Estatal de San José, en las que promedió 11,2 puntos, 4,4 rebotes, 3,7 asistencias y 1 robo de balón por partido,[1] Fue nombrado Jugador del Año de la Mountain West Conference e incluido en el mejor quinteto de la conferencia al final de su temporada sénior después de promediar 17,5 puntos, 4,6 rebotes y 4,7 asistencias por partido.[2] Al término de la temporada se declaró elegible para el draft de la NBA.[3]
| Año | Equipo | PJ | PT | MPP | %TC | %3P | %TL | RPP | APP | ROB | TPP | PPP |
| 2019–20 |
San Jose State |
31 | 20 | 19.3 | .504 | .235 | .735 | 2.3 | 1.8 | 1.0 | .5 | 4.9 |
| 2020–21 |
San Jose State |
21 | 21 | 29.7 | .455 | .250 | .450 | 5.3 | 3.2 | 1.5 | 1.0 | 7.4 |
| 2021–22 |
San Jose State |
30 | 29 | 34.6 | .478 | 429 | .681 | 5.5 | 4.6 | 1.1 | 1.1 | 13.2 |
| 2022–23 |
San Jose State |
35 | 35 | 36.5 | .429 | .338 | .758 | 4.7 | 4.8 | .7 | .7 | 17.4 |
| Total |
117 | 105 | 30.2 | .454 | .340 | .689 | 4.4 | 3.7 | 1.0 | .8 | 11.2 |
Tras no ser elegido en el Draft de la NBA de 2023, el 5 de julio firmó un contrato dual con los Milwaukee Bucks,[4] con los que disputó la Liga de Verano de la NBA e incluso participó en un partido de la pretemporada (cinco minutos ante Oklahoma City Thunder), aunque finalmente fue cortado el 18 de octubre.[5] Cuatro días más tarde firmó con Toronto Raptors, pero fue despedido el mismo día.[6] El 30 de octubre se unió a su filial en la G League, los Raptors 905.[7] Acabó la temporada promediando 9,2 puntos, 3,8 rebotes y 3,8 asistencias por partido.[8]
El 9 de mayo de 2024 firmó con los Niagara River Lions de la Canadian Elite Basketball League.[9] Disputó 16 partidos, en los que promedió 11,6 puntos, 6,1 rebotes y 5,5 asistencias por partido.[8]
El 4 de agosto de 2024 fichó con el Darüşşafaka Lassa de la Basketbol Süper Ligi (BSL) turca,[10] con el que acabó entre los mejores del campeonato turco en anotación (15,7 puntos, séptimo), asistencias (5,5, sexto) y recuperaciones (1,3, séptimo) para ser el tercer jugador más valorado de la Liga Turca (17,2 créditos) y siendo el octavo jugador con más influencia en el torneo (358,1 en el Floor Impact Counter).
El 12 de junio de 2025 firma por el South East Melbourne Phoenix de la NBL de Austrlia, pero se desvincularía un mes más tarde para volver a Europa y poder jugar Euroliga.
El 9 de julio de 2025 firma por una temporada con el Valencia Basket de la Liga Endesa española.[11]
El 31 de marzo de 2016 anunciaría su renovación por una temporada más con Valencia Basket, para así disputar su segundo año en el club del túria.[12]