Rozpoczął naukę w USAF Test Pilot School w kalifornijskiej bazie Edwards. Szkolenie zakończył w grudniu 1998. 1999–2000 – pozostał w Edwards Air Force Base, gdzie był pilotem doświadczalnym samolotów F-16 aż do wyboru na astronautę.
W sumie wylatał ponad 4300 godzin na ponad 40 różnych typach samolotów.
Praca w NASA i kariera astronauty 2000 – 26 lipca został członkiem 18 grupy astronautów NASA. W sierpniu rozpoczął szkolenie na astronautę. 2002 – w Johnson Space Center zakończył przeszkolenie podstawowe, uzyskując uprawnienia pilota wahadłowca. Po kursie został skierowany do Biura Astronautów NASA do wydziału zajmującego się eksploatacją stacji kosmicznej (Station Operations Branch). 2003-2008 – kierował programem lotów astronautów na samolocie T-38 i pracował w laboratorium integracji awioniki promów kosmicznych (Shuttle Avionics Integration Laboratory). Poza tym w Centrum Kierowania Lotem w Houston podczas trwania Ekspedycji 8 – 19 oraz lotów wahadłowców od STS-115 do STS-126 utrzymywał łączność z astronautami pracującymi na orbicie (tzw. CapCom). 2008 – 5 grudnia został wyznaczony do załogi misji STS-130. Powierzono mu funkcję pilota misji. 2010 – w lutym uczestniczył w blisko 14-dniowym locie kosmicznym na pokładzie promu Endeavour.