Johnson redshirted as a true freshman at North Dakota State in 2015.[3] He was a member of their national championship team that season, although he saw no playing time.[3][5] He saw limited action in 2016, only seeing offensive playing time in the final few games.[4] Playing left tackle, he was lined up directly next to another player named Zack Johnson when on offense.[4] He appeared in a total of eight games on the season.[3]
Johnson became a full-time starter at right tackle as a sophomore in 2017, a position he held for the rest of his college career.[3][6][7] He started all 15 games and helped NDSU set a school record in rushing yards, being named honorable mention all-conference as they went on to win the national championship.[3][8] In 2018, he again started every game, allowing only two sacks as North Dakota State won another national championship.[3][9] Johnson was named an FCSAll-American and a first-team All-Missouri Valley Football Conference (MVFC) selection for his performance.[8][10]
As a senior in 2019, Johnson moved to right guard and started all 16 games, only allowing one sack while helping NDSU win their third-straight national championship.[3][9][11] He was named first-team All-American and first-team All-MVFC, and was later invited to the NFLPA Collegiate Bowl.[3][6]
Professional career
Green Bay Packers
After going unselected in the 2020 NFL draft, Johnson was signed by the Green Bay Packers as an undrafted free agent.[6] He was released at the final roster cuts, but was soon after re-signed to the practice squad.[12][13] He was elevated to the active roster for their game with the Carolina Panthers, but did not appear in the match.[1][14] Johnson signed a reserve/futures contract with the team on January 27, 2021.[15] He was released on August 17, 2021.[16]
Arizona Cardinals
Johnson was signed to the practice squad of the Arizona Cardinals on September 30, 2021.[17] He was released on October 29.[18]
Denver Broncos
On November 24, 2021, Johnson was signed to the practice squad of the Denver Broncos.[19] He was signed to a futures contract on January 10, 2022.[20] Johnson was released by the Broncos on May 13, before being re-signed on May 17.[21] He was released at the final roster cuts on August 30.[22]
Baltimore Ravens
The Baltimore Ravens signed Johnson to their practice squad on September 27, 2022.[23] He was released on December 20.[24]
Tennessee Titans
On December 21, 2022, Johnson was signed to the practice squad by the Tennessee Titans when his former NDSU teammate Dillon Radunz went on injured reserve.[25][26] Johnson was elevated to the active roster for the Titans' game against the Dallas Cowboys, and made his debut in the 27–13 loss, appearing on four offensive and three special teams snaps.[27][28] He signed a future contract on January 10, 2023.[29] He was waived on August 27, 2023.[30]