Summary
Highlights
Recent statements from leaders at Anthropic and NVIDIA have suggested that software engineering jobs will be significantly impacted or even eliminated by AI in the near future. While these predictions are alarming, the speaker notes that similar claims have been made consistently since early 2023, creating uncertainty for both current and aspiring software engineers.
The speaker argues that the future of programming is not just a technical issue of AI capability, but also a 'people problem' related to company decisions. They present a spectrum of outcomes, from AI fully automating all technical jobs (unlikely to happen in isolation) to AI having minimal impact. The most probable truth lies somewhere in the middle.
One possibility is that AI will handle routine coding tasks, but programmers' roles will shift. The speaker observes this in their own work, where AI handles boilerplate code and unit tests, while humans focus on high-level design decisions and debugging complex system issues. This shift might explain why junior developer roles are decreasing while senior roles remain strong, as AI could accelerate skill acquisition for new developers.
Despite AI handling more coding tasks, learning to code is still crucial. Coding forms the foundational understanding necessary for debugging, making high-level technical decisions, and building other technical skills. The speaker recommends starting with a popular and beginner-friendly language like Python, noting its prevalence in ML and AI projects.
A more speculative outcome is that software engineering, as we know it, could be replaced by entirely new technical roles. These might include overseeing AI agents, investigating AI system failures, or advising companies on AI workflow implementation. The speaker believes decision-makers will still seek human guidance, and the future will involve more, not less, investment in technology, leading to new tech jobs.
While a career strictly focused on manual line-by-line coding might be risky, a flexible approach to a technical career is still worthwhile. Preparation involves staying updated with tech and AI research, learning traditional 'senior' skills like debugging large systems and system design earlier in one's career, and fundamentally learning to code to understand the underlying technology.