After a sterling junior career with the Portland Winter Hawks, Peterson was selected in the first round, 12th overall, of the 1978 NHL Amateur Draft by the Detroit Red Wings. He made Detroit's NHL squad in his first training camp, but unfortunately saw his season end after only 5 games due to a broken leg. Recovering from his injury, he spent most of the 1979–80 season in the minors, although he saw 18 games in a Detroit uniform and scored his first NHL goal. In 1980–81, he established himself as an NHL regular, registering 6 goals and 24 points in 53 games. Early in the 1981–82 season, Peterson was dealt to the Buffalo Sabres in a monster six-player trade centered around Mike Foligno and Danny Gare. In Buffalo, he would hit his stride as an NHL player as a key component of one of the best checking lines in the league alongside Craig Ramsay and Ric Seiling. In 1982–83, he set career highs of 13 goals and 24 assists for 37 points, while establishing himself as a top-notch penalty killer and face-off specialist. After four years with the Sabres, Peterson was claimed by the Vancouver Canucks in the 1985 NHL Waiver Draft. In 1985–86, he registered 9 goals and 22 assists for 31 points with the Canucks, including a career-high 3 shorthanded goals. His acquisition would be a key factor in a 68-goal reduction in the team's goals against from the previous year. In 1986–87, Peterson recorded 7 goals and 15 assists for 22 points in 69 games for the Canucks. Peterson was claimed by the Hartford Whalers in the waiver draft on the eve of the 1987–88 season, and would suffer through the worst year of his career with just 2 goals and 9 points in 52 games. He would rebound to have an improved year in 1988–89, registering 4 goals and 17 points in 66 games for the Whalers while anchoring the top penalty-kill unit alongside Dave Tippett. However, at the conclusion of the season he announced his retirement to accept a coaching position with the Whalers. Peterson finished his NHL career with totals of 72 goals and 141 assists for 213 points in 620 games, along with 484 penalty minutes. He added 4 goals and 4 assists for 8 points in 31 playoff games.
Coaching career
Following his retirement, Peterson spent two seasons as an assistant coach for the Whalers under head coachRick Ley. Following Ley's firing in 1991, Peterson returned to the Portland Winter Hawks, his former junior team, to accept a head coaching position there. In Portland, he would establish himself as one of the top coaches in Canadian junior hockey, winning three division titles in 7 years. His tenure with the Winter Hawks culminated with a dominating 1997–98 season, in which the team posted a 53–14–5 record and ultimately won the WHL Championship and then the Memorial Cup as the top team in Canadian junior. Following his Memorial Cup championship in 1998, Peterson moved back to the NHL to accept a job as the associate coach to Barry Trotz with the expansion Nashville Predators. He stayed as a coach with the Predators until 2011, despite being considered for head coaching positions at other teams in the NHL.