2014–15 season After going undrafted in the
2014 NBA draft, Roberts joined the
Philadelphia 76ers for the
Orlando Summer League and the
Miami Heat for the Las Vegas Summer League. In nine total summer league games, Roberts averaged 8.8 points and 5.8 rebounds per game. On September 29, 2014, he signed with the 76ers, only to be waived by the team on October 25 after appearing in four preseason games. On November 3, 2014, Roberts was acquired by the
Delaware 87ers of the
NBA Development League as an affiliate player of the 76ers. On December 12, he re-signed with the 76ers, but just three days later was waived again by the team before playing in a game for them. He was subsequently reacquired by the 87ers on December 16. On January 21, 2015, he was traded to the
Santa Cruz Warriors, along with the returning player rights to
Darington Hobson, in exchange for
Sean Kilpatrick and a 2015 first-round pick. After just two games for Santa Cruz, he left the team and signed with the
San Miguel Beermen on January 27 as an import for the
2015 PBA Commissioner's Cup. In 16 D-League games in 2014–15 (14 for Delaware, 2 for Santa Cruz), he averaged 17.5 points, 11.9 rebounds, 1.6 assists and 1.1 blocks per game. On February 17, 2015, he was released by San Miguel after appearing in just four games.
2015–16 season On July 21, 2015, Roberts signed with the
Toronto Raptors after averaging 10.3 points and 9.5 rebounds in four
Summer League games for the team. On October 24, 2015, he was waived by the Raptors after appearing in three preseason games. On November 13, he was acquired by
Raptors 905. He made his debut for Raptors 905 on November 25, recording 11 points and 13 rebounds as a starter in a 93–91 win over the
Idaho Stampede. His 2015–16 season was marred by injuries. He missed the team's first five games due to an ankle sprain, missed a game on December 31 with a knee flare up, and was shelved in early February with a hip contusion. He was named a 2016
D-League All-Star, but played sparingly for the East team in the All-Star Game in part due to a jammed thumb. He was subsequently waived by Raptors 905 on March 22. Roberts appeared in 24 games (all starts) for Raptors 905 in 2015–16, averaging 18.1 points, 12.1 rebounds, 1.3 assists and 1.5 blocks in 33.2 minutes per game.
2016–17 season In July 2016, Roberts joined the
Milwaukee Bucks for the
2016 NBA Summer League. On July 4, 2016, he signed with
Tofaş of the
Turkish Basketball Super League. After suffering a knee injury in a game on December 10, 2016, Roberts parted ways with Tofaş and returned to the United States. In 10 games for Tofaş, he averaged 11.7 points, 6.2 rebounds and 1.3 assists per game.
2017–18 season On August 2, 2017, Roberts signed a one-year deal with the
Adelaide 36ers of the
National Basketball League. However, he was released from his contract on October 5, the season-opening day, due to a reported knee injury. On November 13, 2017, Roberts signed with Israeli club
Hapoel Jerusalem for the rest of the 2017–18 season. On December 16, 2017, Roberts made his
Israeli League debut in an 88–86 win over
Hapoel Holon, recording 14 points, 15 rebounds and four blocks. Roberts helped Jerusalem to reach the
2018 Israeli League Final Four, where they eventually lost to
Hapoel Holon. In 32 games played during the 2017–18 season (both in the EuroCup and the Israeli League), Roberts averaged 10.4 points and 7 rebounds per game.
2018–19 season On January 25, 2019, Roberts signed with
Science City Jena of the
Basketball Bundesliga. In 15 games, he averaged 14.3 points and 6.3 rebounds per game.
2019–20 season On July 3, 2019, Roberts signed with French team
Élan Chalon. In 22 games, he averaged 7.7 points and 4.1 rebounds per game.
2021 Between August 4 and September 1, 2021, Roberts played 11 games for
Indios de San Francisco de Macorís of the
Liga Nacional de Baloncesto. He averaged 8.8 points and 6.4 rebounds per game. ==National team career==