Following this tweet of mine, I want to dive deeper into the topic:
The air in the tech world is thick with debate. With the rapid advancements in AI coding tools – tools that can write, debug, and even deploy code with impressive speed – a question looms large: Do we still need software engineers? Or at least, do we need as many?
While the conversation often fixates on automation replacing human tasks, I believe this perspective misses a more profound shift. Instead of signaling the demise of engineering, AI is ironically driving a powerful return to its roots: a necessary pivot back towards deep, foundational engineering principles.
Think back to the early days of computing, roughly the 1970s through the early 2000s. Entering the tech field often required a significant investment in understanding core computer science principles, hardware, operating systems, and data structures. Building software meant grappling directly with complexity, optimizing performance at a fundamental level, and having a strong grasp of how systems worked end-to-end. An engineering degree or deep self-taught knowledge was frequently a prerequisite. It was, by nature, a discipline demanding a deep understanding of the underlying technology.
Then came the internet and the subsequent mobile revolution. This era, while bringing unprecedented connectivity and innovation, also lowered the barrier to entry significantly. New frameworks, scripting languages, and accessible platforms allowed individuals to build functional applications with less emphasis on deep theoretical computer science or systems knowledge. You could become a proficient web or mobile developer relatively quickly by mastering specific tools and libraries, sometimes without a deep understanding of what was happening under the hood regarding infrastructure, databases, or low-level performance. This era democratized access to tech creation, which was largely positive, but it also arguably led to a certain ‘flattening’ of required technical depth in some domains.
Now, AI is changing the game again. While AI tools can generate code snippets or automate repetitive tasks, they don’t eliminate the need for human engineers; they elevate the requirements. To effectively use AI tools in a complex system, you need to understand what to ask, how to integrate the output, where potential errors might arise, and why a particular architectural pattern is necessary.
Debugging AI-generated code, optimizing system performance that includes AI components, designing robust and scalable infrastructure to support AI models, and architecting data pipelines for machine learning all require a level of understanding that goes beyond simply writing functional code. You need a deep grasp of system architecture, database design, security, performance optimization, and often, a renewed appreciation for core algorithms and data structures.
The modern, successful engineer in the age of AI isn’t just a coder; they are a system thinker. They understand the entire stack. They know how code interacts with infrastructure, how data flows through systems, and how to design reliable, scalable, and efficient solutions. AI tools become force multipliers for these engineers, automating the mundane but relying on human expertise for design, strategy, and complex problem-solving.
So, no, AI isn’t making engineers obsolete. It’s pushing the field back towards the rigour and depth that characterised its earlier days. It’s an exciting time for those who are passionate about truly understanding how technology works, from the code to the cloud and beyond. The future belongs to the deep engineers.
Original article here.




Leave a Reply