Andrew Ng (앤드류 응), a Coursera co-founder and one of the world’s deep learning experts, stressed that software engineering fundamentals still matter in the era of agentic coding.

In a recent post on social media platform X (Twitter), he said, “Even if a coding agent writes all the code, developers need to know the basic principles of software.” He added, “You need fundamentals to tell the agent precisely what to do and what to give up.”

·[Tech Insight] Conditions for the fastest AI-native engineering teams

He said the key to building AI applications is not only AI. AI does not work in isolation and runs inside a larger application. Developers must build and refine that application as well.

Even novice developers who do only vibe coding without fundamentals can build simple apps. But in such cases, coding agents often make the wrong choices on latency, availability, consistency, reliability, maintainability, simplicity and cost. That is because developers do not even know such trade-offs exist and cannot point the agent in the right direction.

Andrew Ng summarised five software engineering capabilities developers need, citing findings from his “AI Engineering Skills” research.

The first is the ability to build full-stack applications.

Andrew Ng said, “Thanks to agentic coding, developers who used to handle only one area such as frontend or mobile can now take on a full-stack role.” He added that they still need to understand how the entire stack works, including UI components, caching, page rendering, API design, authentication, state and session management, asynchronous processing, data persistence, testing, security and accessibility.

The second is data management. Andrew Ng said data is the foundation of software, and even if agents can help with migration, once a data structure is set it is hard to change easily.

He said, “If you understand access patterns for data, you can decide what to store and for how long.” He added that choosing the right storage method such as relational, document, key-value or graph changes speed, scalability, availability, reliability and cost. “AI systems pull information from data sources and use it as the basis for decisions,” he said. “If you design the data architecture poorly, AI may not even notice what information is missing.” He said such problems can be fixed only when someone who understands the context intervenes directly.

The third is system architecture design. He said developers need to understand a software’s purpose, including user numbers, the importance of latency and cost, to decide the platform, the frontend-backend boundary, how to decompose the system, and whether to use a monolith or microservices. Andrew Ng said, “The right architecture changes at each stage of a project.” He said a structure that fits a prototype may not fit a first production system, and as a service grows the structure changes again.

The fourth is the ability to make systems safe and stable. Andrew Ng said developers need to know how to set a testing strategy to verify a system works properly. He said they must decide the ratio of unit tests to integration tests, what tools to use and how much to inspect code, including coverage. He added that developers must design for disruption scenarios such as API request limits, ensure services degrade gracefully when errors occur, and minimise the blast radius of failures. He said that under a “shift left” flow that moves security work earlier in development, many developers must now also take on part of a security engineer’s role.

The fifth is the ability to scale and operate in a production environment. The main point, he said, is that developers must be able to handle the entire software development lifecycle, from configuring deployment environments and release strategies to CI/CD automation.

Andrew Ng said, “In operations, you need to install observability tools, set alerts and manage incidents.” He added that developers must gauge traffic volume to scale up servers, do load balancing, and adjust data infrastructure through sharding, indexing and replication.

He then said, “Coding agents have changed the way software is built, including software with no AI components.” He added that memorising coding syntax is becoming less useful, but stressed that “developers who deeply understand how software works overwhelmingly outpace developers who only do vibe coding without understanding.”

Understanding software fundamentals also helps developers judge what software can and cannot do. Andrew Ng said, “This understanding is important context in the process of using coding agents and producing results.”

Keyword

#Andrew Ng #Coursera #X #AI Engineering Skills #CI/CD
Copyright © DigitalToday. All rights reserved. Unauthorized reproduction and redistribution are prohibited.