Barker was drafted 3rd overall in the 2004 NHL Entry Draft by the Chicago Blackhawks. Barker played 5 seasons with the Blackhawks before being traded to the Minnesota Wild for Kim Johnsson and defensive prospect Nick Leddy. He played 2 seasons with the Wild and the Wild placed him on waivers on June 28, 2011. He signed a contract with the Edmonton Oilers on July 1, 2011. He played a season with the Oilers before being cut by the team on June 25, 2012. He joined the Texas Stars for 23 games before signing a $700,000, one-year contract with the Vancouver Canucks.