In 2017, Lee's freshman season at California, he appeared in 28 games (making 18 starts), batting .277 with three RBIs.[2][3] After the season, he played in the Northwoods League.[4] As a sophomore in 2018, he played in 36 games, making 28 starts, hitting .238 with five home runs and 26 RBIs. He returned to play in the Northwoods League that summer, hitting .283 with six home runs and 44 RBIs in 57 games.[5] Lee broke out as a junior in 2019, slashing .339/.415/.613 with 15 home runs and 57 RBIs over fifty games, earning a spot on the Pac-12 First Team.[6][7]
Lee did not play a minor league game in 2020 due to the cancellation of the minor league season caused by the COVID-19 pandemic.[12] To begin the 2021 season, he was assigned to the Asheville Tourists of the High-A East.[13] After slashing .330/.397/.459 with three home runs and 14 RBIs over 29 games, he was promoted to the Corpus Christi Hooks of the Double-A Central on June 14.[14] In mid-August, he was placed on the injured list with an oblique strain, and was activated in early September.[15] Over fifty games with the Hooks, Lee hit .254/.320/.443 with eight home runs and 27 RBIs.[16] After the end to Corpus Christi's season, Lee was promoted to the Sugar Land Skeeters of the Triple-A West, and played in nine games with them.[17] Lee ended the 2021 season with a combined .277/.340/.438 slash line with 11 home runs and 45 RBIs over 88 games between the three clubs.[18] He was selected to play in the Arizona Fall League for the Glendale Desert Dogs after the season.[19] He returned to Sugar Land to begin the 2022 season.[20]
On July 1, 2022, the Astros selected Lee's contract and promoted him to the major leagues.[21] He made his MLB debut that night as a pinch hitter for Martín Maldonado versus the Los Angeles Angels and was retired on a pop-up.[22] On July 4, 2022, Lee made his first major league start for the Astros against the Kansas City Royals at Minute Maid Park. Lee led Houston's offense versus the Oakland Athletics on July 10, singling off starterCole Irvin in the fifth inning to score Jake Meyers for his first major league hit and RBI. In the seventh inning, Lee collected his first major league double and recorded two more RBIs. He completed a 3-for-4 night with three RBIs as Houston won 6–1.[23]
The Astros optioned Lee to Sugar Land on August 2, 2022. On August 23, he homered three times and drove in a career-high five to lead a 23–8 win over the Las Vegas Aviators. It was also the first multi-homer game of his professional career.[24] Before Game 6 of the 2022 World Series, the Astros replaced Yuli Gurriel, who exited Game 5 with a knee injury, on their roster with Lee.[25] The Astros defeated the Philadelphia Phillies in that game for their fourth win in the best-of-seven series to give Lee his first career World Series title.[26]
On July 28, 2023, Lee was traded to the Chicago White Sox in exchange for right-handed pitcher Kendall Graveman.[28][29] Lee was called up to the active roster on August 24. In 24 games for Chicago, he struggled to an .077/.143/.139 batting line with one home run and three RBI. Lee was optioned to the Triple–A Charlotte Knights to begin the 2024 season,[30] but was later recalled to the Opening Day roster following an injury to Max Stassi.[31]