The third golden age of software engineering – thanks to AI, with Grady Booch - The Pragmatic Engineer Recap

Podcast: The Pragmatic Engineer

Published: 2026-02-04

Duration: 1 hr 17 min

Summary

In this episode, Grady Booch argues that rather than signaling the end of software engineering, AI is ushering in a third golden age for the field. He reflects on historical shifts in software development and emphasizes the enduring importance of human skills amidst technological advancements.

What Happened

Grady Booch, a pioneer in software engineering, shares his insights on the evolution of the field, highlighting that we are currently experiencing the third golden age of software engineering, largely influenced by advancements in AI. He discusses the historical context of software engineering, tracing its roots back to the early days when the distinction between hardware and software was almost nonexistent. Booch points out that this evolution has been characterized by rising levels of abstraction, allowing engineers to tackle increasingly complex problems with innovative solutions.

Throughout the episode, Booch emphasizes that coding is only one aspect of software engineering. He discusses the necessity of balancing technical, economic, and ethical considerations in software development. He also critiques the notion that software engineering will soon be automated, strongly disagreeing with Dario Aimodae's prediction that this will happen within a year. Instead, Booch posits that the skills and human insight required in the field remain irreplaceable, framing AI as a tool that enhances rather than replaces human capability in software engineering.

Key Insights

Key Questions Answered

What are the three golden ages of software engineering?

Grady Booch identifies three distinct golden ages in the history of software engineering. The first golden age emerged when software began to be decoupled from hardware, leading to the creation of assembly language and common instruction sets. This marked a significant shift that allowed for more complex software solutions. The second golden age followed with the rise of object-oriented design and the establishment of frameworks that further abstracted programming complexities, making software development more accessible and efficient. Booch believes we are now entering the third golden age, driven by advancements in AI, which he argues will transform how software is engineered.

Why is coding only part of software engineering?

Booch emphasizes that software engineering encompasses much more than just coding. He asserts that successful software development requires a blend of technical knowledge, economic understanding, and ethical considerations. The complexities involved in building software systems necessitate a holistic approach, where engineers must navigate various dynamic forces. This includes understanding the limitations imposed by hardware, managing team dynamics, and considering the broader social and legal implications of the software being developed.

How does Grady Booch respond to automation predictions in software engineering?

Grady Booch strongly disagrees with predictions that automation will replace software engineering within a short time frame, specifically addressing Dario Aimodae's claim of a 12-month timeline. He argues that while AI can significantly aid in writing code and managing tasks, it cannot replace the nuanced understanding and critical thinking that human engineers bring to the table. Booch believes that the human element is crucial for ensuring that software is not only functional but also ethical and aligned with societal needs.

What historical context does Booch provide for the term 'software engineering'?

Booch traces the origins of the term 'software engineering' to Margaret Hamilton, who coined it during her work on the Apollo program. He explains that she sought a way to distinguish herself as a software developer in a predominantly hardware-focused environment. This historical perspective underscores the evolution of the field, as the NATO conference further solidified the term's acceptance. Booch highlights that the recognition of software as an independent entity emerged relatively recently in the grand timeline of technology.

What challenges do software engineers face today?

According to Booch, modern software engineers encounter a myriad of challenges that extend beyond mere technical issues. He discusses the complexities of managing large-scale projects, which often require collaboration among diverse teams. Additionally, engineers must grapple with the ethical implications of their work, particularly as software increasingly permeates daily life and raises concerns around privacy and data management. Booch argues that the ability to balance these technical, economic, and ethical forces is essential for success in the field.