1983-ban az University of Colorado (Boulder) keretében üzemmérnöki oklevelet szerzett. 1986-ban a Florida Atlantic University keretében számítógépes rendszerekből mérnöki diplomát kapott. A NASA (JSC) rendszermérnökeként a Shuttle Training Aircraft (STA) szimulátor programfelelőse. 1998-ban a Texas A & M University keretében doktorált (Ph.D.).
1998. június 4-től a Lyndon B. Johnson Űrközpontban részesült űrhajóskiképzésben. Két űrszolgálata alatt összesen 26 napot, 15 órát és 41 percet (639 óra) töltött a világűrben. Négy űrséta alatt összesen 26 óra és 14 percet töltött a világűrben.
Űrrepülések
STS–117, a Atlantis űrrepülőgép 28. repülésének küldetésfelelős. Az űrhajósok négy űrséta során az ISS-re felszerelték az S3 és S4 napelemforgató egységet, illetve a kapcsolódó napelemeket. A szolgálati idő alatt folyamatosan küzdöttek a számítógépek egymás után bekövetkező hibáival. Harmadik űrszolgálata alatt összesen 13 napot, 20 órát és 11 percet (332 óra) töltött a világűrben. 9 280 000 kilométert (5 800 000 mérföldet) repült, 219 alkalommal kerülte meg a Földet.
STS–119 a Discovery űrrepülőgép 36. repülésének küldetésfelelőse. Az ISS űrállomásra szállították az utolsó S6 rácsos elemet, az utolsó két napelemszárny hordozóját. Ezzel a rácsszerkezet kiépítése befejeződött. Második űrrepülése alatt összesen 12 napot, 19 órát és 30 percet töltött a világűrben. 8 530 000 kilométert (5 300 000 mérföldet) repült, 202 alkalommal kerülte meg a Földet.