In 2011, Mills notched seven victories and three saves while making 30 appearances for a Skyhawk squad that won an OVC Tournament game for the first time. Mills ranks on UT Martin's top-10 career list in appearances (67, sixth), strikeouts (165, seventh) and wins (13, eighth).[citation needed]
On February 8, 2017, the Royals traded Mills to the Chicago Cubs in exchange for minor leaguer Donnie Dewees.[9] Assigned to the Iowa Cubs of the Triple-APacific Coast League, he made seven appearances during the 2017 season, spending much of the year on the disabled list with a left ankle contusion and then a strained right forearm.[10]
After returning to Iowa in 2018, the Cubs promoted Mills to start his first MLB game for injured Tyler Chatwood against the Cincinnati Reds on August 24, 2018. He also got his first hit in the same game.[11] He spent most of 2019 with Iowa, where he was 6-4 with a 5.11 ERA.[12]
Mills joined the Cubs rotation in the 2020 season after José Quintana began the season on the injured list.[citation needed] On September 13, 2020, Mills no-hit the Milwaukee Brewers 12–0 at Miller Park. He threw 74 of 114 pitches for strikes while striking out five and walking three. It marked the 16th no-hitter in the Cubs franchise history.[13] Mills finished the 2020 season with a 5–5 record and a 4.48 ERA in 11 starts.[14] His home runs per nine innings rate (1.9) was the highest among qualified NL pitchers.[14] Mills made 32 appearances (20 starts) for Chicago in 2021, posting a 6-7 record and 5.07 ERA with 87 strikeouts in 119.0 innings pitched.
On May 19, 2022, Mills was placed on the 60-day injured list with a back injury.[15] After making four rehab starts, he was activated on June 7.[16] In 7 games (2 starts) for Chicago, he struggled to a 9.68 ERA with 11 strikeouts in 17+2⁄3 innings pitched. On September 15, Mills underwent surgery to remove part of a disc in his back, and missed the remainder of the season.[17] On November 10, Mills was removed from the 40-man roster and sent outright to Triple–A Iowa; he elected free agency the same day.[18][19]
Cincinnati Reds
On May 18, 2023, Mills signed a minor league contract with the Cincinnati Reds organization.[20] After two starts with the rookie–level Arizona Complex League Reds, Mills was elevated to the Triple–A Louisville Bats. In two starts for Louisville, he posted a 4.50 ERA with one strikeout in six innings of work. On June 27, Mills had his contract selected to the major league roster.[21] He appeared out of the bullpen in a game against the San Diego Padres, allowing five runs (two earned) on four hits and one walk in one inning of work.[22] On July 2, Mills was designated for assignment by Cincinnati.[23] He cleared waivers and was sent outright to Louisville on July 4.[24] On October 2, Mills elected free agency.[25]
Personal
Mills and his wife, Paige, welcomed their first child, a son, in 2020.[26]