Menu
From Writing Code to Managing Agents. Most Engineers Aren't Ready | Stanford University, Mihail Eric

From Writing Code to Managing Agents. Most Engineers Aren't Ready | Stanford University, Mihail Eric

EO

246,446 views 1 month ago

Video Summary

The video discusses the emergence of the "AI native engineer," a new class of developers who are proficient in both traditional software development principles and AI-driven workflows. This shift is occurring amidst a challenging job market for junior engineers, exacerbated by recent layoffs, a surge in CS graduates, and the growing influence of AI. The key to becoming a top AI native engineer lies in orchestrating multiple AI agents effectively, which involves iterative development, clear task isolation, and adept context switching, akin to managing human teams. Building an "agent-friendly codebase" with robust testing, consistent documentation, and clear design patterns is crucial for AI agents to operate effectively and avoid compounding errors. The video also touches on the difference between functional and incredible software, emphasizing that true innovation comes from going beyond basic requirements and investing in deeper problem-solving. An interesting fact is that a class on the modern software developer, focusing on AI across the SDLC, filled over 100 seats within hours of opening for enrollment.

Short Highlights

  • A new class of "AI native engineers" is emerging, blending traditional coding skills with AI proficiency.
  • The job market for junior software engineers is currently difficult, with one graduate applying to 1000 places and hearing back from only two.
  • Managing multiple AI agents effectively is presented as the "last boss in a game," crucial for becoming a top 1% user.
  • An "agent-friendly codebase" requires consistent documentation, robust testing, and clear design patterns for AI agents to function efficiently.
  • Experimentation and a "good naivety" are key traits for young engineers, enabling them to tackle complex problems and innovate, potentially leading to trillion-dollar companies.

Key Details

The Emergence of the AI Native Engineer [00:00]

  • The concept of an "AI native engineer" is introduced, representing a new generation of developers who are proficient in AI as a fundamental language.
  • This cohort, particularly junior developers entering the workforce, is expected to be the first to fully embrace this paradigm shift.
  • The potential for a single developer to manage multiple AI agents is highlighted, transforming traditional roles.

"A single developer become a manager of agents."

The Challenging Landscape for Junior Software Engineers [01:06]

  • The software development landscape is experiencing significant disruption due to AI, impacting all aspects of development.
  • Anecdotes reveal extreme difficulty for junior engineers in securing roles, with one recent graduate applying to 1000 positions and receiving only two responses.
  • This situation is attributed to a "perfect storm" of factors: a hiring surge post-COVID followed by massive layoffs, tremendous growth in CS education leading to a larger pool of graduates, and the rise of AI making employers consider hiring fewer, AI-native individuals.

"The reality is for a lot of junior engineers it's very difficult for them to you know get some of these roles."

Orchestrating AI Agents: The Skill of the Top 1% [03:13]

  • Top AI native engineers possess a strong foundation in traditional programming, system design, and algorithmic thinking, coupled with competence in agentic workflows.
  • The approach to managing multiple agents should be iterative, starting with one agent and gradually adding more for isolated tasks, rather than launching many simultaneously.
  • Understanding and defining the boundaries between different tasks is crucial before assigning them to separate agents.
  • The ability to "context switch" effectively between agents, akin to managing human interns, is identified as a core skill for successful multi-agent workflows.

"So really knowing how to like properly handle multiple agents is like the last boss in a game."

Building Agent-Friendly Codebases [05:43]

  • An "agent-friendly codebase" or development ecosystem is one that an AI agent can easily understand and contribute to without breaking existing functionality.
  • Robust testing is paramount, as tests act as contracts defining software correctness, which agents rely upon for safe operation.
  • Inconsistent documentation, such as outdated readmes, can confuse agents and lead to errors.
  • Agents can compound errors rapidly if initial misunderstandings are not caught, highlighting the importance of a robust starting point for agent tasks.
  • Consistency in design patterns and code formatting (e.g., linting, style checking) ensures agents adhere to established codebase rules.

"If your code has that kind of a situation then the agent will read the readme and maybe the code and they'll and they'll ask them like which of these what's the right interpretation?"

Differentiating Functional vs. Incredible Software [08:34]

  • The distinction between functional and "incredible" software often comes down to "software taste" and the willingness to go beyond basic requirements.
  • True innovation and exceptional software emerge from investing extra effort, such as tackling bonus assignments or extra credit projects, driven by a desire to solve a problem rather than just achieve a grade.
  • This dedication to building more complex, robust, and expansive features is where top engineers differentiate themselves, sometimes leading to the foundation of startups.

"But the taste building happens in that like that last mile like where you go spend and you like do the extra work to like expand the feature, make it more robust, make more things possible in the application."

The Role of Experimentation and Naivety in AI Development [09:50]

  • Experimentation is a fundamental aspect of becoming an AI-native software developer.
  • Even leading AI development teams, like those at Anthropic, engage in continuous experimentation, rewriting their own software weekly or bi-weekly using their tools.
  • Young engineers, entering the industry with a "good naivety," are often more open to exploring new possibilities and tackling challenges without the ingrained skepticism of experienced developers, making them ideal for startup environments.

"The more important thing is to build experimentation into your own workflows."

The Enduring Need for Junior Software Engineers [10:57]

  • Junior engineers, being new to the industry, are like "sponges," absorbing information and viewing all possibilities without the pre-conceived notions that can make senior developers resistant to new tools like AI.
  • This lack of internalized limitations allows them to be more agile and faster at adopting new skills, potentially enabling them to succeed in ways that senior developers, who are more ingrained in their methods, might not.
  • The core skill of software development is framed as learning to think about building complex systems using digital means and algorithms, akin to learning mathematical principles for problem-solving.

"Someone who is coming to the industry for the first time, they're like they're like a sponge. Like everything is possible to them."

The Power of Intelligence Allocation and AI Native Organizations [13:28]

  • The ability to allocate intelligence is becoming increasingly critical in the modern world.
  • For AI-native organizations, the key is not just using AI for internal tasks but embedding it directly into products so AI can interact with customers and perform work autonomously, removing humans from the loop.
  • The future holds significant potential, with open questions about AI collaborating with each other possibly leading to trillion-dollar companies.

"The key for AI native is that you're not just using it to do the work. You're embedding it in the product so that the AI can directly do the work with the customer."

Other People Also See