After graduating high school and being drafted, Johnson played four seasons with Dartmouth of ECAC Hockey in the NCAA.
Following his final season at Dartmouth, Johnson signed a two-year, entry-level contract with the Penguins on March 25, 2008.
[4] In the 2011–12 season, Johnson earned a regular checking line role on the Wild, playing in a career high 77 games to recorded 8 goals and 26 points.
Despite his successful season with the Wild, Johnson was released as a free agent and on July 11, 2012, he was signed on a one-year, two-way deal with the Phoenix Coyotes.
[5] On July 9, 2014, Johnson left the Bruins organization after one season and signed his first contract abroad on a one-year deal with the Växjö Lakers of the Swedish Hockey League.