Software Engineering in the age of LLMs

Posted on Oct 9, 2024

The landscape of software engineering is undergoing a seismic shift. Rapid advancements in artificial intelligence are signaling what I believe to be the last call for traditional programmer jobs. This is likely the last chance to secure a “traditional programming job” and if you identify solely as a “programmer,” now is the time to act decisively. It might be necessary to contemplate a strategic pivot in your career to stay relevant in an increasingly AI-driven industry.

The Signs of Transformation

Superficial Coding with AI

In a YouTube video, a developer using bolt.new demonstrates the superficial level of coding that has become prevalent: “It says there is an error here… What we’re going to say is ‘fix this problem’ because I don’t even know what the issue is, nor do I want to look at it.

AI Enabling Non-Programmers

A striking example comes from a Twitter thread where an 8-year-old built a functional chatbot in 45 minutes using AI tools, without prior coding knowledge. This demonstrates how AI is making complex programming tasks accessible to beginners, enabling rapid prototyping, and shifting skill requirements.

The Rise of “AI-Native Coders”

According to a Stack Overflow Podcast, “AI-native coders” - individuals with no prior programming knowledge or experience - are now able to ship products within a week. One such developer mentions, “I was able to ship product in both Python and JavaScript within a week, because ChatGPT or any other AI tooling helped me write the rest of the code.”

The Decline of Traditional Tools and rise of AI-powered tools

Stack Overflow, once a goldmine and main resource for programmers to unblock their problems, is now seeing drastically decreasing usage. This indicates a significant shift in where developers seek support and community. Stack Overflow was previously the go-to platform for programmers to find solutions, share knowledge, and collaborate. However, this decline is clearly evident in the data, showing a sharp downward trend in Stack Overflow’s activity and engagement metrics.

Similarly, Google searches for programming-related queries have also seen a notable decrease. This trend suggests that developers are moving away from traditional methods of problem-solving and information gathering.

Meanwhile, new AI-powered tools like Replit, OpenAI Canvas, Cursor, Claude Artifacts, v0, and GitHub Copilot are emerging as the new hubs for development and collaboration. These platforms are leveraging AI to enhance productivity and innovation, potentially accelerating the shift away from traditional programming resources and communities that were once dominated by platforms like Stack Overflow and search engines.

Stack Overflow number of posts trend

Declining trend in Stack Overflow posts

Traditional vs. “SV-like” programmers

The traditional view of software engineers as mere coders is becoming increasingly obsolete. As highlighted by The Pragmatic Engineer in a blog before the whole AI coding revolution, there’s a stark contrast between traditional companies and “SV-like” (Silicon Valley-like) companies in their approach to engineering talent.

Traditional companies often adhere to an outdated perspective:

“Software engineers get paid more than many other functions. We need to utilize them accordingly. We can’t have them run empty.”

This view, which sees engineers as code-producing machines, is rapidly losing ground. It fails to recognize the broader value that engineers can bring to an organization.

In contrast, forward-thinking “SV-like” companies embrace a more holistic approach:

“Bring some of the highest leverage through coding and problem solving. Expose them to the business so they can find more impactful opportunities for the business.”

These companies understand that engineers’ value extends far beyond writing code. They leverage engineers’ problem-solving skills, creativity, and technical insights to drive business innovation and strategy.

For those identifying solely as coders, this shift presents a significant challenge. The traditional programming jobs are being undermined, not just by AI advancements, but by evolving business philosophies that demand more from their technical talent. To remain relevant and valuable in this changing landscape, engineers must adapt, expanding their skills beyond coding to encompass broader business acumen and strategic thinking.

Implications for Traditional Programming Roles

This trend poses a significant threat to traditional programming roles:

  1. Creation of functional software with minimal technical understanding
  2. Risk of deep programming knowledge becoming obsolete
  3. Potential devaluation of many programming skills
  4. Threat to job security for a large portion of the programming workforce

Traditional programmers must now focus on developing skills that AI can’t easily replicate, such as complex problem-solving and creative thinking.

The Job Market and Future Outlook

Stagnant Tech Job Numbers and Rising Layoffs

Despite the critical role of software engineers, the number of tech jobs is stagnant. Coupled with increasing layoffs, as documented on Layoffs.fyi, job security in traditional programming roles is becoming precarious. The once-booming demand for developers is cooling, signaling a potential downturn for those who haven’t adapted.

Ultimately, the ability to perform the same job efficiently, whether aided by AI or not, raises the question: “Does it even matter if both can do the same job?”

Rethinking Your Career Path

Given these developments, it’s imperative for programmers to consider broadening their skill sets beyond traditional coding. Embracing roles that integrate business acumen, strategic thinking, and advanced problem-solving can provide a buffer against the uncertainties of an AI-driven future.

Therefore, consider these actions:

  1. Embrace AI Tools: Adopt and master AI-powered development tools and platforms to enhance your productivity and stay competitive in the evolving tech landscape.
  2. Study Human Psychology: Enhance your soft skills by delving into human psychology, improving your ability to communicate, lead, and collaborate effectively in diverse team environments.
  3. Consider the Big Picture: Develop a holistic understanding of technology’s impact on society, business, and global trends to anticipate future developments and make informed career decisions.
  4. Create Value for the World: Leverage your technical skills and knowledge to identify and solve real-world problems, contributing to meaningful projects that have a positive impact on society.

Conclusion

The tech industry is undergoing a paradigm shift where traditional programming skills are becoming less crucial. As AI and advanced tools evolve, the future of tech careers lies in leveraging these technologies for higher-level problem-solving and strategic thinking.

This transition blurs the line between programmers and non-programmers in business contexts. Both groups will increasingly compete for positions focused on using AI-powered tools to solve business problems. Traditional programmers face a stark challenge as their specialized knowledge becomes less relevant in the face of democratized software development tools.

Career stability in this new era depends on effectively applying these tools to business challenges, regardless of one’s background. This levels the playing field, potentially reducing the premium on traditional programming skills.

For programmers, this is the last call to fundamentally rethink their value proposition. In an AI-driven future, technical skills alone are no longer a sufficient differentiator. The landscape is converging, and competition for roles that drive business value through technology will be fiercer and more diverse than ever before.