Margaret Heafield Hamilton est née à Paoli dans l'Indiana, elle est la fille de Kenneth Heafield et Ruth Esther Heafield (née Partington)4,5. Après avoir fini ses études secondaires à la Hancock High School, en 19546, elle étudie les mathématiques à l'Université du Michigan en 1955, avant d'obtenir sa licence (Bachelor of Arts) de mathématiques au sein du Earlham College en 1958 (mineure en philosophie)7,8. Elle déménage dans l'État du Massachusetts avec l'intention de poursuivre des études de Mathématiques pures à l'Université Brandeis mais finalement choisit d'intégrer le MIT en 1960 pour développer des programmes informatiques de prévision météorologique sur des ordinateurs LGP-30 (en) et PDP-110,1 pour le professeur Edward Lorenz.
Au laboratoire Draper elle travaille pour les missions du programme Apollo de la NASA sur les logiciels embarqués dans les vaisseaux spatiaux qui doivent prendre en charge la navigation et l'atterrissage sur la Lune. Elle devient responsable de l'équipe chargée du développement du logiciel embarqué utilisé par les missions Apollo puis Skylab3. Elle acquiert ainsi une solide expérience sur la conception des logiciels à une époque où les méthodes de gestion et de conception des projets informatiques en sont à leur balbutiement. Dans le cadre de ces projets informatiques, son domaine d'expertise concerne la conception de système et de développement de logiciels, la modélisation de processus, la conception de systèmes de prévention, le paradigme de développement, les systèmes formels et des langages informatiques de modélisation, la conception et de la programmation orientée objet, la gestion automatisée des cycles de vie, les méthodes de fiabilisation et de réutilisation des logiciels, l'analyse de domaine, l'exactitude de propriétés linguistiques intégrées, les techniques d'architecture ouverte pour des systèmes robustes, l'automatisation du cycle de vie complet, l'assurance qualité, l'intégration transparente, les systèmes distribués, les techniques de détection d'erreur et de récupération, les systèmes d'interface homme-machine, les systèmes d'exploitation, les techniques de test bout en bout et des techniques de gestion du cycle de vie3. Elle innove dans le domaine du processus de construction des programmes de vols et de leur environnement de développement, en normalisant et en rationalisant ces processus dans toutes les phases de développement, qui sont réutilisés de version en version, ou entre les logiciels du LM et le CM, jusqu'au programme Skylab3.