Bailey was selected by the Florida Marlins in the second round (64th overall) of the 1997draft. Bailey began his professional career in 1997 playing for the Gulf Coast League Marlins and played in the Marlins minor league system until 2001.
In March 2002, the Marlins traded him to Montreal Expos for a player to be named later (Wilson Valdéz). He played in the Expos system until October 2003 when he granted his free agency.
Bailey was signed as a free agent by the Red Sox organization first on November 7, 2003, then again on December 15, 2004, December 10, 2006 and December 13, 2007.[2]
Bailey participated in the Red Sox' 2007 spring training before being sent back to the Pawtucket Red Sox. He was called up from Pawtucket on July 6, 2007, and made his MLB debut for the Red Sox replacing the injured Kevin Youkilis at first base, going 0-4.[3] His first major league hit was a home run on July 8, against Detroit Tigers southpaw Nate Robertson.[4] Bailey was optioned back to Pawtucket on July 12, 2007, to make room on the active roster for pitcher Joel Piñeiro.[5]
Bailey participated in the Red Sox 2008 spring training camp, but was reassigned to minor league camp on March 8.[6]
Bailey had very good beginning to the 2008 season in Pawtucket, hitting well over .300 by the end of May. Bailey's contract was purchased by the Red Sox on May 30, 2008. On August 26, 2008, after being called up by the Red Sox, he was denied entry to Yankee Stadium, with security believing he was a fan trying to get in without a ticket. Eventually he was allowed in after they discovered he was a member of the Red Sox, and he drove in two runs to help give the Red Sox a 7-3 win.[7] Bailey finished the 2008 season having played 27 games in the majors and batted .280 with two home runs and six RBIs.
On February 6, 2009, Bailey was outrighted off the 40-man roster to create roster space for re-signed catcher Jason Varitek.[8] Bailey refused the assignment and became a free agent but was immediately re-signed to a minor league contract by the Red Sox and was invited to major league spring training.[2]
Early in the 2009 season, Kevin Youkilis went on the DL, and Bailey was called to fill in his spot. On June 2, 2009 was optioned back to Triple-A Pawtucket after Mark Kotsay being activated off the DL. He was once again called to the majors on June 30, after Mike Lowell was placed on the DL. Bailey was designated for assignment on September 1, 2009.[9] In October 2009, Bailey was granted free agency.[10]
On December 28, 2009, Bailey signed a minor league contract with the Arizona Diamondbacks with an invitation to spring training.[11]
On November 20, 2010, Bailey signed a minor league contract with the Minnesota Twins with an invitation to spring training.[11]