…everybody in the world is now a programmer. This is the miracle of artificial intelligence,”
Jensen Huang
More and more I am seeing, reading, and being told that generative AI will remove the need for coders.
I agree…kind of.
I agree that “coders”, the people I define as those that in the past isolated themselves in offices, solely writing code based on requirements, are part of a dying role in business. As someone who has been programming since childhood and has worked across diverse industries, I’ve seen firsthand how the nature of problem-solving and business challenges has evolved. While I believe mastering technical skills remains essential, the ability to break down problems and understand business challenges is fast becoming the most critical skill in the era of AI.
Right now, LLM tools such as GPT-4 or Gemini can produce capable code. Currently this is limited to how well a person can communicate this to the LLM (prompt engineering). LLMs are not perfect at creating code, but they are improving at a dramatic rate. We still need people to understand the code and how it works, review and analyze bugs and provide critical thinking around changes to software.
To bury our heads in the sand and think that this change is just a fad and will go away is foolish. AI will change how we work, and will have a cascading effect on how we build teams and interact with each other.
Here are some changes that I see coming to the programming world.
Creative Problem-Solving Over Technical Proficiency
In my career I’ve observed that while technical proficiency is crucial, creative problem-solving often drives success. This involves breaking down complex problems into manageable parts, a skill that remains irreplaceable even with advanced AI. Generative AI can suggest numerous ways to tackle a problem, but the human ability to dissect the problem, evaluate the feasibility of each solution, and anticipate potential pitfalls is indispensable.
Generative AI will still only be as good as the developers guiding them. As I said, we still need people that can recognize and develop good maintainable and readable code. These new tools just allow those with the knowledge to put it into practice much faster than was previously possible.
Understanding Business Challenges
Every industry has unique challenges and nuances. For instance, in the financial sector, regulatory compliance is as critical as technical innovation in a competitive environment. In the government sector, organizations need to balance mission support with cost management and the management of long-lasting systems.
I have always advocated that it is more important to understand the ‘why’ of a system, than the ‘how’ of a system. The ‘Who, What, and Why” of a system is so crucial, and it is something only people can truly express at the moment.
Generative AI can assist in developing solutions, but understanding the specific business challenges ensures these solutions are practical and applicable. Successful developers will grasp the underlying business context and create truly effective solutions.
Strategic Decision-Making
The flexibility of software allows it to be continuously updated and modified, adapting to changing business situations. This raises strategic questions: Should customers pay for new features or security updates? When do we change technology platforms? How do we train or acquire staff that aligns to our strategic goals?
These questions are still uniquely human and still require a person to make these decisions.
The Shift from Task Execution to Strategic Oversight
With AI taking over more routine tasks, developers and solution architects need to shift their focus from execution to oversight. This means setting the right parameters for AI, validating its outputs, and ensuring alignment with business goals. The ability to oversee and guide AI in generating solutions that fit the business context becomes a key skill.
Building a Resilient and Adaptable Toolset
As I’ve mentioned in my discussions on becoming a good solution developer, starting with a personal tool chest of skills and continuously updating it is essential. In the context of generative AI, this means not just learning new tools and languages but also developing a deep understanding of AI’s capabilities and limitations. This adaptability ensures that developers can leverage AI effectively while mitigating its shortcomings.
Those who do not leverage these tools will be overcome by those who not only leverage them, but use them in ways that make themselves, and their businesses, more productive.
The Human Edge in an AI-Driven World
As generative AI continues to evolve, the most valuable skill for developers and solution architects will be their ability to break down complex problems and understand the specific business challenges. While AI can generate solutions, the human ability to analyze, contextualize, and make strategic decisions remains irreplaceable. By focusing on creative problem-solving, strategic decision-making, and continuous learning, we can harness the power of generative AI to drive innovation and business success.