Williams signed with the Washington Redskins as an undrafted free agent on August 3, 2016.[1] He was waived by the Redskins on September 3, 2016 and was signed to the practice squad the next day.[2][3] After spending his entire rookie season on the practice squad, Williams signed a reserve/future contract with the Redskins on January 2, 2017.[4] He was waived on September 2, 2017.[5]
Kansas City Chiefs
On September 4, 2017, Williams was signed to the Kansas City Chiefs' practice squad.[6]
Indianapolis Colts
On October 14, 2017, Williams was signed by the Indianapolis Colts off the Chiefs' practice squad.[7] He was waived on November 25, 2017, and was re-signed to the practice squad.[8][9] He signed a reserve/future contract on January 1, 2018.[10] He was waived on May 9, 2018.[11]
Washington Redskins (second stint)
On May 22, 2018, Williams re-signed with the Redskins.[12] He was waived for final roster cuts before the start of the 2018 season on September 1, 2018.[13]
Oakland Raiders
On October 29, 2018, Williams was signed to the Oakland Raiders practice squad.[14] He was released on November 6, 2018.
New Orleans Saints
On December 5, 2018, Williams was signed to the New Orleans Saints practice squad, but was released three days later, only to be re-signed on December 12.[15]
On July 26, 2019, Williams was signed by the Baltimore Ravens.[16] He was waived during final roster cuts on August 30, 2019.[17]
Tampa Bay Vipers
In October 2019, Williams was picked by the Tampa Bay Vipers of the XFL as part of the 2020 XFL Draft.[18] He had his contract terminated when the league suspended operations on April 10, 2020.[19]
San Francisco 49ers
On December 16, 2020, Williams was signed to the San Francisco 49ers practice squad.[20] He was elevated to the active roster on December 19 and January 2, 2021, for the team's weeks 15 and 17 games against the Dallas Cowboys and Seattle Seahawks, and reverted to the practice squad after each game.[21][22] He signed a reserve/future contract on January 4, 2021.[23] Williams was waived by the 49ers on August 10, 2021.[24]
New York Jets
On August 23, 2021, Williams was signed by the New York Jets.[25] He was waived on August 31, 2021 and re-signed to the practice squad the next day.[26][27] He was promoted to the active roster on September 14, 2021.[28] He was released on September 20 and re-signed to the practice squad.[29] He was promoted back to the active roster on October 5.[30] He was waived on December 18 and re-signed to the practice squad.[31] He signed a reserve/future contract with the Jets on January 10, 2022.[32] He was waived on May 6, 2022. He was re-signed on July 26.[33] On August 23, 2022, he was released.[34]
Vegas Vipers
The Vegas Vipers selected Williams in the first round of the 2023 XFL Supplemental Draft on January 1, 2023.[35] He was placed on the reserve list by the team on March 15, 2023, and activated on March 20.[36] The Vipers folded when the XFL and USFL merged to create the United Football League (UFL).[37]