Coming out of Tennessee in 2009, Foster attended the NFL combine and participated at Tennessee's annual Pro Day. He was projected by many analysts to be drafted from anywhere from the sixth to seventh round or a priority undrafted free agent. He was rated as the 23rd best offensive tackle in the draft out of the 183 available by NFLDraftScout.com.
On April 27, 2009, Foster was signed as an undrafted free agent by the Pittsburgh Steelers.
He entered training camp competing to be a back-up guard against the Steelers' 2009 third-round draft pick, Kraig Urbik. Following an injury to starting veteran guard Darnell Stapleton during training camp, Foster gained the opportunity to become the starting right guard. He ultimately lost the starting job to Trai Essex and was named at backup guard and right tackle to begin the season. He made his professional regular season debut during a Week 3 contest at the Cincinnati Bengals. On November 29, 2009, he received his first career start in a Week 12 loss, to the division-rival Baltimore Ravens, after replacing an injured Chris Kemoeatu at left guard. Foster returned to the starting position on December 20, 2009, against the Green Bay Packers and remained there for the last three games of the regular season, as the Steelers ended with a 9–7 record and missed the playoffs.
As a rookie in 2009, Foster had four starts and played in 14 games.