Margaret Hamilton arbeitete am MIT an Software-Projekten (u. a. an meteorologischer Software für Edward Lorenz, den Vater der Chaostheorie, und an der Software des SAGE-Systems, das nach feindlichen Flugzeugen suchte), bevor sie im Rahmen eines MIT/NASA-Vertrags als leitende Programmiererin für den Apollo-Lenkungscomputer tätig wurde. Sie arbeitete an allen bemannten Apollo-Missionen sowie an vielen unbemannten Missionen. Bei den bemannten Missionen leitete Hamilton das Team, das die Bordsoftware für die Kommando- und die Mondlandefähre entwickelte. Sie war Direktorin der Software Engineering Division am Instrumentation Laboratory des MIT.
Der von Hamilton entwickelte Code war die Software, die von den beiden Computern der Apollo-Raumschiffe verwendet wurde, und bildete die Grundlage für eine ganze Branche von Software-Ingenieuren, die ihre Karriere Hamilton und ihrem Team verdanken. Die Flugsoftware an Bord war für asynchrone Abläufe ausgelegt. Jeder Aufgabe in der Software wurde von den Mitgliedern des Teams eine eigene Priorität zugewiesen. Hamilton entwickelte Software zur Erkennung von Systemfehlern und deren Behebung in Echtzeit. Dazu gehörten auch die von ihr entwickelten „Man-in-the-Loop“-Routinen zur Prioritätsanzeige, die der Software die Möglichkeit gaben, asynchron und in Echtzeit mit den Astronauten zu kommunizieren, wobei die Software und die Astronauten parallel in einer verteilten Systemumgebung arbeiteten. Vor diesem Hintergrund warnten die Prioritätsanzeigen die Astronauten im Falle eines Notfalls, indem sie die normalen Missionsanzeigen der Astronauten unterbrachen und durch Prioritätsalarmanzeigen ersetzten, aus denen sie notfallbezogene Optionen auswählen konnten. Dies war der Fall bei Apollo 11 kurz vor der Landung auf dem Mond, als der Computer überlastet wurde, weil der Rendezvous-Radar-Schalter in der falschen Position gelassen worden war. Die Prioritätsalarmanzeigen erinnerten die Astronauten daran, den Radarschalter wieder in die richtige Position zu bringen. Als die Prioritätsanzeigen sie vor die Wahl stellten, zu landen oder nicht zu landen, entschieden sie sich für die Landung, weil sie (und die Einsatzleitung) an die Integrität der Flugsoftware an Bord glaubten.
Hamilton brachte ihre Tochter Lauren oft mit zur Arbeit, wenn sie nicht im Büro war. Einmal, als ein Teil des Teams Missionsszenarien auf dem hybriden Simulationscomputer durchführte, ging Lauren auf Entdeckungsreise und begann, die DSKY-Tasten auf eine „unnormale“ Weise zu wählen. Sie startete ein Missionsszenario und brachte die Mission zum Scheitern, indem sie P01 (Pre-Launch) in der Mitte des Kurses wählte. Hamilton fragte: „Was wäre, wenn ein echter Astronaut während einer echten Mission versehentlich P01 in der Mitte des Kurses wählen würde?“ Das wäre ein großes Problem, weil dadurch die Navigationsdaten gelöscht würden. Da es Hamilton nicht erlaubt war, einen Code hinzuzufügen, der den Astronauten vor diesem Fehler bewahrt, fügte er der Software eine Programmnotiz hinzu: „P01 während des Fluges nicht auswählen“. Bei der nächsten Mission, Apollo 8, machte der Astronaut den gleichen Fehler; Hamilton und ihr Team konnten den Astronauten helfen, die Navigationsdaten neu zu laden, um die zerstörten Daten zu ersetzen. Sie hatte nun die Genehmigung, Software hinzuzufügen, um dieses Problem bei künftigen Apollo-Missionen zu verhindern.
„Hamilton ist diejenige, die die Idee hatte, der Disziplin den Namen Software Engineering zu geben, um ihr Legitimität zu verleihen“. Sie leitete eine empirische Studie über Apollo und spätere Bemühungen, die zu ihrer Systemtheorie der Kontrolle führte. Aus ihren Axiomen wurde die universelle Systemsprache abgeleitet, zusammen mit ihrem Automatisierungs- und Präventivparadigma. Hamilton ist CEO von Hamilton Technologies Inc. Sie erhielt den NASA Exceptional Space Act Award (2003) und die Presidential Medal of Freedom von Präsident Barack Obama (2016). Sie erhielt ihr eigenes Lego im Women of NASA Lego Set.