Margaret Hamilton liittyi MIT:hen työskennelläkseen ohjelmistoprojekteissa (muun muassa kaaosteorian isän Edward Lorenzin meteorologinen ohjelmisto ja SAGE-järjestelmän ohjelmisto, jolla etsittiin viholliskoneita), ennen kuin hän sai MIT:n ja NASA:n sopimuksen Apollo-ohjaustietokoneen johtavana ohjelmoijana. Hän työskenteli jokaisella miehitetyllä Apollo-lennolla sekä monilla miehittämättömillä lennoilla. Miehitetyissä tehtävissä Hamilton johti ryhmää, joka kehitti komento- ja kuumoduulien lento-ohjelmiston. Hän oli MIT:n instrumentointilaboratorion ohjelmistotekniikan osaston johtaja.
Hamiltonin kehittämä koodi oli ohjelmisto, jota Apollo-avaruusalusten kaksi tietokonetta käyttäisivät, ja se olisi perusta sille, että nykyään ohjelmistoinsinöörit ovat tehneet uransa Hamiltonin ja hänen tiiminsä ansiosta. Aluksen lentoohjelmisto rakennettiin niin, että se oli asynkroninen. Ryhmän jäsenet määrittelivät jokaiselle ohjelmiston tehtävälle yksilöllisen prioriteetin. Hamilton kehitti ohjelmiston, joka havaitsi järjestelmävirheet ja toipui niistä reaaliajassa. Siihen kuuluivat myös man-in-the-loop priority-display-interface-routiinit, jotka antoivat ohjelmistolle kyvyn kommunikoida asynkronisesti reaaliajassa astronauttien kanssa – ohjelmisto ja astronautit toimivat rinnakkain – hajautetussa järjestelmien järjestelmäympäristössä. Tätä taustaa vasten prioriteettinäytöt varoittivat astronautteja hätätilanteessa keskeyttämällä astronauttien normaalit tehtävänäytöt ja korvaamalla ne prioriteettihälytysnäytöillä ja tarjoamalla heille hätätilanteeseen liittyviä vaihtoehtoja, joista he voivat valita. Näin kävi Apollo 11:ssä juuri ennen kuuhun laskeutumista, kun tietokone ylikuormittui, koska kohtaamistutkan kytkin oli jätetty väärään asentoon. Ensisijaiset hälytysnäytöt muistuttivat astronautteja laittamaan tutkakytkimen takaisin paikalleen. Kun prioriteettinäytöt antoivat heille vaihtoehdon: ”laskeutua” tai ”olla laskeutumatta”, he valitsivat laskeutumisen, koska he (ja lennonjohto) uskoivat aluksen lento-ohjelmiston eheyteen.
Hamilton toi usein tyttärensä Laurenin töihin vapaa-aikanaan. Kerran, kun osa tiimistä suoritti tehtäväkohtaisia skenaarioita hybridisimulaatiotietokoneella, Lauren lähti tutkimaan asiaa ja alkoi valita DSKY-näppäimiä ”nimellisestä poikkeavalla” tavalla. Hän käynnisti tehtäväskenaarion ja aiheutti tehtävän epäonnistumisen valitsemalla P01 (laukaisua edeltävä) kesken lennon. Hamilton kysyi: ”Entä jos oikea astronautti valitsisi vahingossa P01:n oikean lennon puolivälissä?”. Tämä olisi suuri ongelma, koska se tuhoaisi navigointitiedot. Koska Hamilton ei saanut lisätä koodia, joka estäisi astronauttia tekemästä tätä virhettä, hän lisäsi ohjelmistoon ohjelmamerkinnän ”älä valitse P01:tä lennon aikana”. Seuraavalla Apollo 8 -lennolla astronautti teki saman virheen; Hamilton ja hänen tiiminsä pystyivät auttamaan astronautteja lataamaan navigointitiedot uudelleen tuhoutuneiden tietojen tilalle. Hänellä oli nyt lupa lisätä ohjelmisto, jolla estetään tämän ongelman esiintyminen tulevilla Apollolennoilla.
”Hamilton oli se henkilö, joka keksi, että tieteenalalle pitäisi antaa nimi ohjelmistotekniikka, jotta se saisi oikeutuksen”. Hän johti Apolloa ja myöhempiä ponnisteluja koskevaa empiiristä tutkimusta, jonka tuloksena syntyi hänen ohjauksen systeemiteoriansa. Sen aksioomista johdettiin universaali systeemikieli sekä sen automaatio- ja ennaltaehkäisyparadigma. Hamilton on Hamilton Technologies Inc:n toimitusjohtaja. Hän sai NASA:n Exceptional Space Act Award -palkinnon (2003) ja presidentti Barack Obaman myöntämän presidentin vapaudenmitalin (2016). Hän sai oman Legon Women of NASA Lego-sarjassa.