Otto split his professional debut season in 2017 between the Gulf Coast Yankees and Staten Island Yankees, going a combined 3–0 with a 1.35 ERA and 30 strikeouts over 20 innings.[4] He spent the 2018 season with the Charleston RiverDogs, recording a 1–1 record with a 3.48 ERA and 8 strikeouts over 10+1⁄3 innings pitched. Otto was limited in the 2018 season as he dealt with a blood clot in his shoulder.[5] Otto split 2019 between the GCL Yankees and Tampa Tarpons, compiling a 3–3 record with a 3.23 ERA and 74 strikeouts over 61+1⁄3 innings.[6] Following the 2019 season, Otto played in the Arizona Fall League for the Surprise Saguaros.[7]
Otto did not play in a game in 2020 due to the cancellation of the minor league season because of the COVID-19 pandemic.[8] He opened 2021 with the Somerset Patriots, going 6–3 with a 3.17 ERA and 103 strikeouts over 65+1⁄3 innings.[9][10][11] After being promoted to the Scranton/Wilkes-Barre RailRiders on July 13, he posted a 1–0 record with a 4.35 ERA and 12 strikeouts over 10+1⁄3 innings.[4]
Texas Rangers
On July 29, 2021, Otto, along with Josh Smith, Ezequiel Durán, and Trevor Hauver were traded to the Texas Rangers in exchange for Joey Gallo and Joely Rodríguez.[12] He was assigned to the Round Rock Express of the Triple-A West following the trade, going 2–1 with a 2.70 ERA and 19 strikeouts over 20 innings.[13][14] On August 27, Texas selected Otto's contract and promoted him to the major leagues to make his MLB debut that night versus the Houston Astros.[15][16] In his debut, he threw five scoreless innings while recording seven strikeouts.[17] Over six games for Texas in 2021, Otto posted a record of 0–3, a 9.26 ERA, and 28 strikeouts over 23+1⁄3 innings.[18] After opening the 2022 season with 3 starts for Round Rock, Otto spent the rest of the season with Texas, going 7–10 with a 4.64 ERA and 107 strikeouts over 135+2⁄3 innings.[19]
Otto opened the 2023 season on the 60-day injured list with a strained oblique.[20] He was activated to make his season debut on June 30, 2023.[21] After struggling to a 10.13 ERA in 6 appearances, Otto was designated for assignment by the Rangers on September 5.[22]
San Diego Padres
On September 7, 2023, Otto was claimed off waivers by the San Diego Padres.[23] He made 3 starts for the Triple–A El Paso Chihuahuas, logging an 0–2 record and 7.94 ERA with 4 strikeouts across 5+2⁄3 innings.
Otto began the 2024 season on the injured list with a right teres major muscle strain.[24] He was designated for assignment by the Padres on July 28, 2024, without having appeared for the team.[25] Otto was released by the organization the same day.[26]
Houston Astros
On August 14, 2024, Otto signed a minor league contract with the Houston Astros.[27] On October 27, Otto re-signed with the Astros on a minor league contract for the 2025 season.[28]