He played college football for the Toledo Rockets and was selected by the Pittsburgh Steelers in the third round of the 2019 NFL draft.
[9] In Week 3 against the San Francisco 49ers, Johnson caught three passes for 52 yards and his first career touchdown as the Steelers lost 24–20.
[10] In Week 8 against the Miami Dolphins, Johnson caught five passes for a career-high 84 yards, including a 45-yard touchdown, in the 27–14 win.
[17] In the Wild Card Round of the playoffs against the Browns, Johnson recorded 11 catches for 117 yards during the 48–37 loss.
[19] In the Wild Card Round of the playoffs against the Kansas City Chiefs, Johnson caught five passes totaling 34 yards and a touchdown in the 42–21 loss.
[24] Johnson opened up the 2023 season against the 49ers, in which he sustained a hamstring injury, taking him out of action for at least a month.
His best game as a Panther came in Week 3 against the Las Vegas Raiders, recording eight receptions for 122 yards and a touchdown in a 36–22 victory.
[33][34] On December 4, Eric DeCosta, the executive vice president and GM of the Ravens, announced that Johnson was suspended for one game due to conduct detrimental to the team.
Johnson was not be eligible to play the rest of the season and became a free agent after the Ravens' divisional round playoff exit loss to the Buffalo Bills