Philadelphia Phillies The
Philadelphia Phillies selected Williams in the third round of the
2015 Major League Baseball draft. He signed with the team for a $719,800
signing bonus. Williams was subsequently assigned to the rookie-level
Gulf Coast League Phillies, where he played
third base and batted .288/.400/.331 with nine stolen bases while being caught twice in 118
at-batss. Williams spent the 2016 season with the Low-A
Williamsport Crosscutters, playing third base and slashing .220/.297/.301 with two home runs, 11 steals (while being caught twice), and 18 RBI in 186 at-bats. He played first base, second base, third base, and every outfield position. He played every position other than pitcher and catcher. Williams did not play in a game in 2020 due to the cancellation of the minor league season because of the
COVID-19 pandemic. He played
winter league for the
Adelaide Giants of the
Australian Baseball League, batting .292/.299/.361 in 72 at bats. He played every position other than pitcher and catcher. With Lehigh Valley in 2021, he batted .245/.315/.316 in 98 at bats. Williams received his first major league call-up on June 8, 2021, to take the place of a struggling
Nick Maton. He debuted with the Phillies that same day, filling in as a
pinch hitter for
starting pitcher Aaron Nola in the fifth inning of a game against the
Atlanta Braves. In his first at-bat, Williams
tripled on a
bunt due to an Atlanta throwing error. He reached home in the next at-bat, an RBI double from
Jean Segura. The following day, in his first MLB
start, Williams hit a two-run
walk-off home run in the bottom of the ninth inning, lifting the Phillies to a 2–1 victory over the Braves. Williams remained in the Phillies lineup, sharing time in the outfield with
Travis Jankowski. He saw the bulk of his playing time against left-handed pitchers, as well as filling in for an injured
Andrew McCutchen. In 98 at bats for the season he hit .245/.315/.316. In the field, he played 15 games in center field, 8 at second base, 8 at third base, 7 in left field, 6 at first base, 5 at shortstop, 3 at third base, and 3 in right field.
San Francisco Giants On March 27, 2022, Williams was traded to the
San Francisco Giants in exchange for infielder
Will Toffey and cash. In eight appearances for San Francisco, he went 3-for-12 (.250) with three RBI. Williams was designated for assignment by the Giants after
Michael Papierski was selected to the roster on May 21.
Miami Marlins On May 26, 2022, Williams was traded to the
Miami Marlins in exchange for infielder Hayden Cantrelle. Williams appeared in 71 games for the Marlins, slashing .235/.290/.313 with one home run, three RBI, and 11 stolen bases.
Los Angeles Dodgers On November 8, 2022, Williams was claimed off waivers by the
Los Angeles Dodgers. However, they non-tendered him on November 18, making him a free agent. On February 3, 2023, Williams re-signed with the Dodgers on a minor league contract. He was assigned to Triple-A
Oklahoma City to begin the season and was called up to the majors on April 18. He had one hit in 10 at-bats with a stolen base in four games for the Dodgers, and hit .268 with six home runs, 29 RBI, and 11 stolen bases in 42 contests for Triple-A Oklahoma City. In seven games for Atlanta, he went 0–for–9 with three stolen bases. Williams was non-tendered and became a free agent on November 17. On November 22, 2023, Williams re-signed with the Braves on a minor league contract. On April 19, 2024, his contract was selected by the Braves. In 34 appearances for Atlanta, Williams slashed .196/.275/.261 with four RBI and three stolen bases. On March 20, 2025, Williams was removed from the 40-man roster and sent outright to Triple-A Gwinnett. On May 9, the Braves selected Williams' contract, adding him to their active roster. He was designated for assignment by the team on September 4. On September 6, Williams cleared waivers and was sent outright to Triple-A Gwinnett. On September 14, the Braves added Williams back to their active roster. In 39 total appearances for Atlanta, he slashed .129/.176/.194 with five RBI and five stolen bases. On October 1, Williams was removed from the 40-man roster and sent outright to Gwinnett; he elected free agency the following day. On January 18, 2026, Williams re-signed with the Braves organization on a minor league contract. On April 11, his contract was selected by the Braves. On April 13, Williams was designated for assignment by Atlanta after going hitless in two appearances. He cleared waivers and elected free agency on April 15. The following day, Williams re-signed with the Braves organization on a minor league contract. ==International career==