Source URL: https://simonwillison.net/2025/Jul/4/identify-solve-verify/#atom-everything
Source: Simon Willison’s Weblog
Title: Identify, solve, verify
Feedly Summary: The more time I spend using LLMs for code, the less I worry for my career – even as their coding capabilities continue to improve.
Using LLMs as part of my process helps me understand how much of my job isn’t just bashing out code.
My job is to identify problems that can be solved with code, then solve them, then verify that the solution works and has actually addressed the problem.
A more advanced LLM may eventually be able to completely handle the middle piece. It can help with the first and last pieces, but only when operated by someone who understands both the problems to be solved and how to interact with the LLM to help solve them.
No matter how good these things get, they will still need someone to find problems for them to solve, define those problems and confirm that they are solved. That’s a job – one that other humans will be happy to outsource to an expert practitioner.
It’s also about 80% of what I do as a software developer already.
Tags: careers, ai-assisted-programming, generative-ai, ai, llms
AI Summary and Description: Yes
Summary: The text discusses the impact of Large Language Models (LLMs) on the software development profession, highlighting the essential skills that remain integral to a developer’s role. It emphasizes that, despite advancements in AI capabilities, human oversight and problem-solving abilities are irreplaceable.
Detailed Description: The text conveys several key insights regarding the relationship between LLMs and software development:
– **Cognitive Shift**: The author notes that their confidence in job security has grown as they utilize LLMs, suggesting a shift in perspective about their role in the coding process.
– **Role of a Developer**:
– The work of a developer entails:
– Identifying problems that can be solved through code.
– Developing solutions for these problems.
– Verifying that the solutions work and address the issues.
– This process comprises three distinct phases, and while LLMs can assist in these tasks, they cannot wholly replace the need for human involvement.
– **Continued Importance of Human Input**:
– Advanced LLMs may handle parts of the coding process but still require human guidance, notably:
– Defining problems clearly for LLMs to tackle.
– Verifying the effectiveness of AI-generated solutions.
– The author emphasizes that about 80% of their job responsibilities remain rooted in essential human skills that AI cannot replicate.
– **Expertise as an Asset**: The text suggests that humans will continue to bring value to software development, as they can navigate the interactivity with LLMs effectively and leverage their capabilities for innovative problem resolution.
Overall, this commentary is pertinent to the “Software Security” and “AI Security” categories, as it enhances understanding of how generative AI could impact software development practices and the need for secure human oversight in AI-driven approaches within infrastructure. Understanding these dynamics is crucial for professionals navigating the evolving landscape of AI-integrated software development routines.