Fisher si diplomò alla Cedar Crest High School di Lebanon, la sua città natale. Venne selezionato inizialmente nel sesto turno del draft MLB dai Texas Rangers, ma rifiutò e si iscrisse alla University of Virginia di Charlottesville. Entrò nel baseball professionistico quando fu scelto nel primo turno, come 37º assoluto del draft 2014, dagli Houston Astros. Debuttò nella MLB il 14 giugno 2017, al Minute Maid Park di Houston contro i Texas Rangers,[1] battendo un fuoricampo nella prima valida in carriera, chiudendo la partita con 2 su 3 in battuta. La sua prima stagione regolare si concluse con una media battuta di .212, 5 home run e 17 punti battuti a casa (RBI).
Durante gara 5 delle World Series 2017 contro i Los Angeles Dodgers, Fisher, entrato come sostituto corridore, grazie a una battuta valida di Alex Bregman segnò il punto della vittoria nel decimo inning che portò in vantaggio gli Astros per 3–2 nella serie.[2] La serie si concluse con Houston che conquistò il primo titolo in 56 anni di storia in gara 7.[3]
Il 15 febbraio 2021, i Blue Jays scambiarono Fisher con i Milwaukee Brewers per un giocatore da nominare in seguito, in aggiunta a una somma in denaro.[4] Dopo aver disputato quattro partite nella MLB, fu designato per la riassegnazione il 22 giugno e venne trasferito alla Tripla-A il 28 giugno. Divenne Free agent a fine stagione.
Il 15 dicembre 2021, Fisher firmò un contratto di minor league con i Minnesota Twins.