Margaret Hamilton kom til MIT for at arbejde på softwareprojekter (herunder meteorologisk software til Edward Lorenz, kaosteoriens fader, og software til SAGE-systemet, der søgte efter fjendtlige fly), inden hun fik en kontrakt med MIT/NASA som den ledende programmør på Apollo Guidance Computer. Hun arbejdede på alle bemandede Apollo-missioner samt på mange ubemandede missioner. I forbindelse med de bemandede missioner ledede Hamilton det hold, der udviklede den indbyggede flyvesoftware til kommando- og månemodulerne. Hun var direktør for Software Engineering Division på MIT’s Instrumentation Laboratory.
Den kode, som Hamilton udviklede, var den software, som de to Apollo-rumskibscomputere skulle bruge, og den skulle danne grundlag for det, der i dag er en industri af softwareingeniører, som skylder deres karriere til Hamilton og hendes team. Den indbyggede flysoftware blev bygget til at være asynkron. Hvert job i softwaren blev tildelt en unik prioritet af medlemmerne af holdet. Hamilton udviklede software til at opdage systemfejl og genoprette dem i realtid. Dette omfattede hendes man-in-the-loop priority-display-interface-routiner, der gav softwaren mulighed for at kommunikere asynkront i realtid med astronauterne – softwaren og astronauterne kører parallelt – i et distribueret system-of-systems-miljø. Med dette som baggrund advarede prioritetsdisplays astronauterne i tilfælde af en nødsituation ved at afbryde astronauternes normale missionsdisplays og erstatte dem med prioritetsalarmdisplays og give dem muligheder i forbindelse med nødsituationer, som de kunne vælge imellem. Dette var tilfældet på Apollo 11 lige før landingen på månen, da computeren blev overbelastet som følge af, at radarkontakten til rendezvous-radaren var blevet efterladt i den forkerte position. De prioriterede alarmsignaler var en påmindelse til astronauterne om at sætte radarkontakten tilbage, hvor den hørte hjemme. Da prioritetsvisningerne gav dem valget: “at lande” eller “ikke at lande”, valgte de på grund af deres (og missionskontrollens) tro på integriteten af flyvesoftwaren om bord at lande.
Hamilton tog ofte sin datter, Lauren, med på arbejde i fritiden. En gang, mens nogle af holdet kørte missionsscenarier på den hybride simuleringscomputer, gik Lauren på opdagelse og begyndte at vælge DSKY-tasterne på en “ikke-nominel” måde. Hun startede et missionsscenarie og fik missionen til at mislykkes ved at vælge P01 (pre-launch) midt undervejs. Hamilton spurgte: “Hvad nu hvis en rigtig astronaut ved et uheld havde valgt P01 under midtvejs i en rigtig mission?” Det ville være et stort problem, fordi det ville udslette navigationsdataene. Da Hamilton ikke havde lov til at tilføje kode for at forhindre astronauten i at begå denne fejl, tilføjede han en programnote til softwaren: “Vælg ikke P01 under flyvning”. På den næste mission, Apollo 8, begik astronauten den samme fejl; Hamilton og hendes team var i stand til at hjælpe astronauterne med at genindlæse navigationsdataene for at erstatte de ødelagte data. Hun fik nu tilladelse til at tilføje software for at forhindre, at dette problem opstår på fremtidige Apollo-missioner.
“Hamilton er den person, der kom med idéen om at navngive disciplinen software engineering som en måde at give den legitimitet på”. Hun ledede en empirisk undersøgelse af Apollo og senere indsatser, som resulterede i hendes systemteori om kontrol. Ud fra dens aksiomer blev det universelle systemsprog afledt sammen med dens automatiserings- og forebyggelsesparadigme. Hamilton er administrerende direktør for Hamilton Technologies Inc. Hun modtog NASA’s Exceptional Space Act Award (2003) og Presidential Medal of Freedom fra præsident Barack Obama (2016). Hun fik sin egen Lego i Legosættet Women of NASA Lego.