In April 1990, Johnson was accepted as an aerospace engineer and research pilot at the NASA JSC Aircraft Operations Division, Ellington Field, TX. He qualified as a T-38 instructor, functional check flight and examiner pilot, as well as Gulfstream I aircraft commander, WB-57 high altitude research pilot and KC-135 co-pilot. Additionally, he conducted flight test programs in the T-38 aircraft including JET-A airstart testing, T-38N avionics upgrade testing and the first flight of the T-38 inlet redesign aircraft. In 1994 he assumed duties as the Chief, Maintenance & Engineering Branch responsible for all maintenance and engineering modifications on NASA JSC aircraft.
Selected by NASA in June 1998, he reported for training in August 1998. Astronaut Candidate Training includes orientation briefings and tours, numerous scientific and technical briefings, intensive instruction in Shuttle and International Space Station systems, physiological training and ground school to prepare for T-38 flight training, as well as learning water and wilderness survival techniques. Following a period of training and evaluation, Johnson will receive technical assignments within the Astronaut Office before being assigned to a space flight.