Comenzó a patinar a los diez años de edad.[3] Su primera competición fue en el nivel júnior en el Campeonato nacional de Corea del Sur de 2011, donde quedó en cuarto lugar y al siguiente año ganó el oro. En el campeonato nacional de 2014 se ubicó en quinto lugar, fue su primera participación en el nivel sénior nacional.[4] Desde 2015 comenzó a entrenar en Toronto, Canadá, con Brian Orser.[5] Su debut internacional en nivel júnior fue en el Autumn Classic de Canadá 2015, donde ganó la medalla de oro.[6] Compitió en el Campeonato Mundial Júnior de 2016, con un séptimo lugar en el programa corto y sexto en el libre, se ubicó en el séptimo lugar general.[4]
En la temporada 2016-2017, Cha hizo su debut en el Grand Prix Júnior. Su primera prueba asignada fue en Japón, donde ganó la medalla de oro con un total combinado de 239.47 puntos.[7] Su siguiente evento fue en Alemania, donde también se hizo con el oro y aseguró un lugar en la final. Al quedar cuarto en su programa corto y tercero en el libre, ganó la medalla de bronce en la final del Grand Prix Júnior de 2016-2017.[4] Más adelante ganó su primer título nacional en el Campeonato surcoreano de patinaje en 2017.[8]
Fue seleccionado para competir por su país en los Juegos Olímpicos de Pieonchang 2018, su participación lo dejó en el lugar 15.[9] En la temporada 2018-2019 Cha ganó la medalla de plata en el Autumn Classic de Canadá[10] y se llevó de nuevo la plata en el Trofeo de Finlandia de la Challenger Series de la ISU, con un total de 239.19 puntos.[11]
Su primera asignación a la serie del Grand Prix en nivel sénior fue el Skate Canada de 2018, donde se ganó la medalla de bronce.[12] Su segundo evento fue el Grand Prix de Helsinki, donde de nuevo logró en bronce con un total de 243.19 puntos.[13] Su participación en la Final del Grand Prix lo dejó con una medalla de bronce.
↑«Team South Korea 2018»(en inglés). IFS Magazine. 7 de enero de 2018. Archivado desde el original el 8 de enero de 2018. Consultado el 15 de noviembre de 2018.