Johnson played youth soccer with Botelho Soccer Training and Brampton YSC.[2][3] In 2011, he represented Canada at the Danone U12 Cup.[4] During his youth years, he also spent some time playing in England and Spain.[5] In 2016, he won the ROPSSA high school boys soccer title.[5]
After the cancellation of the 2020 season due to the COVID-19 pandemic, he moved to Salt Lake Community College, where he guided the Bruins to their inaugural NJCAA title.[7][11] In May 2021, he was named the Scenic West Player of the Week.[12] After leading the team with eight goals, he was named to the All-Region 18 First-Team[13] and the NJCAA All-America First Team.[14]
In 2021, he transferred to Seattle University, joining the men's soccer team.[15][16] That season, he led the team in goals, assists, and points that season and helping them win the Western Athletic Conference championship.[17][18] At the end of the season, he was named to the All-WAC Second Team, the WAC All-Tournament Team, and the All-Far West Region Team.[19][20][21] During the 2021 season, Major League Soccer teams were interested in drafting him, with Charlotte FC interested in taking him with the first-overall pick at the 2022 MLS SuperDraft. He attended the MLS Combine, however, he did not earn a Generation Adidas deal to enter the draft before finishing college, and was therefore ineligible for the draft.[17][22]
In February 2022, Johnson transferred to Syracuse University, joining his fourth collegiate program in four years.[23][24] Prior to the 2022 season, he was named to the Mac Hermann Trophy watchlist and the United Soccer Coaches watchlist.[25][26] He made his debut on August 25, recording his first assist against the Iona Gaels.[27][28] On September 2, he scored his first goal for Syracuse in a 1-1 draw against the Vermont Catamounts.[29] In September, he was named the ACC Offensive Player of the Week for the first time.[30][31] On October 18, he scored a brace against the Bucknell Bison.[32] With Syracuse, he scored 11 goals, of which eight were game-winning goals, leading the NCAA and also added six assists, finishing second in the ACC in goals and points, and helped Syracuse win the national championship.[33] He was named to the All-ACC First Team, the All-South Region First Team, and a First Team All-American in 2022.[34][35] He was also named as a finalist for the Hermann Trophy, awarded to the top collegiate player in the United States.[36][37][38]
In March 2023, he joined the Vancouver Whitecaps first team on a short-term loan, ahead of a CONCACAF Champions League match, but was an unused substitute.[50][51] In May 2023, he joined the first team on another short-term loan ahead of a Canadian Championship match,[52] where he made his debut and scored in a victory against York United FC on May 11.[53] He signed a third short-term loan at the end of May,[54] making his MLS debut on May 27 against St. Louis City SC.[55] He signed his fourth short term loan on June 6 (league rules allow up to four such loans per player per season).[56] On June 30, he signed a full MLS contract with the first team for the remainder of the season, with club options for 2024 and 2025.[57] On May 7, 2024, he scored a brace in a 2-1 victory over Cavalry FC in the 2024 Canadian Championship.[58]