O'Brien replaces Steve Sarkisian, who left to become the head coach at Texas.
"We are pleased and happy to be able to add Bill O'Brien to our coaching staff," Alabama coach Nick Saban said in a statement. "He has a wealth of experience as both an offensive coordinator and head coach in the NFL and college. Bill is one of the brightest offensive minds in football, an outstanding teacher and excellent recruiter. He will strengthen our coaching staff and give our players the best possible chance to be successful."
ESPN reported on Jan. 13 that the Crimson Tide were finalizing a deal with O'Brien.
For the second time during his tenure at Alabama, Saban leaned on his connection with New England Patriots head coach Bill Belichick, hiring one of his former assistants to the role of OC. The last was Brian Daboll in 2017.
O'Brien, 51, was a Patriots assistant from 2007-11 before taking the position as head coach at Penn State.
O'Brien took over a program rocked by the Jerry Sandusky scandal and led the Nittany Lions to a 15-9 record in two seasons before taking the job in Houston.
O'Brien led the Texans to the playoffs four times and was elevated to the role of general manager in January. He was fired in October four games into his seventh season.
"I am honored and excited to join Coach Saban's staff at The University of Alabama," O'Brien said in a statement. "I have an incredible amount of admiration for the rich football tradition at this University and the success Coach Saban has had during his time in Tuscaloosa. I'm looking forward to the opportunity to work with some of the best football players in the country, while helping to continue the success this program has enjoyed for many years."
O'Brien won't be the only former NFL head coach to join the Alabama staff this offseason.
O'Brien and Marrone are well acquainted, having both served as assistants on George O'Leary's staff at Georgia Tech in the 1990s.