Dorrans stroomde in 2005 door vanuit de jeugd van Livingston. De eerste helft van het seizoen 2005-2006 speelde hij op huurbasis voor Partick Thistle. Dorrans tekende in januari 2008 vervolgens een contract bij West Bromwich Albion, dat zes maanden later inging. Hij maakte zijn Premier League-debuut voor 'WBA' op 21 december 2008. tegen Manchester City. Op 11 augustus 2009 scoorde hij zijn eerste doelpunt voor West Brom in de League Cup, tegen Bury. Dorrans tekende op 19 juli 2010 een nieuw vierjarig contract bij de club.
Op 7 september 2009 werd Dorrans voor het eerst opgeroepen voor Schotland, voor een WK-kwalificatieduel tegen Nederland. Hij kwam die dag niet aan spelen toe. Hij maakte zijn debuut als international alsnog op 10 oktober 2009, in een vriendschappelijke wedstrijd tegen Japan. Op 3 maart 2010 speelde Dorrans zijn eerste interland op eigen bodem, tegen Tsjechië. Hij werd na afloop door de sponsoren uitgeroepen tot man van de match.