Friend was born in Barnstaple, Devon. He began his career at then non-League Exeter City as a youth team player, signing a two-year professional contract in March 2006. Able to play left back, centre-back or left-sided midfield, he made his first-team debut on 17 April 2006 in a 0–0 draw at Forest Green Rovers. His Exeter career took off in the 2007–08 season when he was integral to the side that won promotion to the Football League after defeating Cambridge United in the play-off final at Wembley Stadium. During that season he became the youngest ever captain in Exeter's history and scored his first goal for the club in a 4–4 draw with Burton Albion on 26 April 2008.
After playing in Exeter's opening matches in the Football League, he moved to Wolverhampton Wanderers in the Championship on 1 September 2008, signing a two-year contract, with the option of a third year, for an initial fee of £350,000. He made six first team appearances for Wolves during the 2008–09 season as they were promoted to the Premier League as champions. To gain regular playing time, he spent a month's loan at League One club Millwall during August to September 2009, before returning to Wolves. He soon went out on a month's loan again on 18 September to another League One club, Southend United, where he scored his first league goal with a free-kick against Southampton. After a proposed extension to his stay with Southend was cancelled due to the club's financial troubles, he instead spent six weeks on loan at Championship club Scunthorpe United. Friend was recalled by Wolves as extra cover after injuries struck, giving him his first Premier League appearance on 15 December 2009 against Manchester United. His surprise involvement in the game was just one factor behind the club eventually receiving a £25,000 suspended fine for fielding an under-strength side. Friend did not feature again for Wolves before being loaned out once more, this time rejoining former club Exeter City for the rest of the season, during which time he helped them avoid an instant return to League Two.
At the end of the 2009–10 season it was announced that his deal at Wolves would not be extended, and Friend switched to Championship club Doncaster Rovers on a two-year contract despite being linked with a return move to Exeter City. Friend made his Doncaster debut in their 2–0 opening day win at Preston North End on 7 August 2010. On 11 September 2010, Friend scored his first goal in a 2–2 draw against Watford. The next game on 14 September 2010, Friend set up a goal for James Coppinger to score a second goal in a match with a 3–1 win over Norwich City. Since making his debut, Friend became established in the first team in defence position, playing in the left-back. In a match with a 3–1 win over Scunthorpe United on 18 October 2011, Friend sustained an injury in early minutes and was substituted. After a surgery, Friend was out for three months. On 25 January 2011, Friend made his return in a 2–0 loss against Burnley, coming on as a substitute in an early minute. Friend was appointed captain at the beginning of 2011–12 following and won player of the year and supporters player of the year at the end of the season. Friend managed to regain his place in the starting eleven in the left back position but the club was relegated to League One after three seasons in the Championship.
Middlesbrough
On 23 July 2012, despite interest from Ipswich Town and Nottingham Forest, it was announced that Doncaster had agreed a fee with Middlesbrough for Friend. On 30 July, Friend had agreed personal terms and officially signed for Middlesbrough. The fee was reported to be around £100,000. After completing a successful season, in which Friend became a fans' favourite because of his consistent performances, he was awarded the Community Player of the Year after attending numerous off-field events, as well as winning the players' player of the year award. For the 2013–14 season, Friend was issued the number 3 squad number previously worn by departing defender André Bikey. Friend scored his first goal for Boro in a 2–2 draw at Wigan on 25 August. It was his first goal since 2010. Friend scored his second goal for Boro with a 20-yard strike in a 2–2 draw against Nottingham Forest on 17 September 2013. Friend captained Middlesbrough for the first time in a 2–0 victory against Rotherham United on 11 April 2015.