Bush was signed as an undrafted free agent by the Cincinnati Bengals in 1997. After several years with the team playing mostly on special teams, he was signed by the St. Louis Rams during the 2001 offseason, but was cut before the end of training camp. He was then picked up by the Arizona Cardinals, where he played at both tight end and special teams. After being released by the Cardinals before the start of the 2004 season, he was signed by the 49ers in December 2004. As a member of the 49ers, he has seen starting time as both fullback and tight end, and has been a boost on special teams, providing key blocks for the return men.