The AI agents era for engineering leaders has begun

The AI agents era for engineering leaders has begun
Photo by Kenny Eliason / Unsplash

Introduction

AI agents are becoming increasingly prevalent in the software development landscape. They can perform a variety of tasks, from automating repetitive processes to assisting in complex decision-making. As software R&D leaders, understanding the capabilities and limitations of AI agents is crucial to leveraging their potential effectively.

AI agents vs AI assistants

It's important to note that there is a difference between AI agents to AI assistants. AI assistants - GitHub Copilot for example, coexist alongside engineers while they work and assist whenever possible - auto completing code, assisting in documentation and more.

AI agents, on the other hand, aim to perform the task autonomously - given a task, they will do every step in the way to achieve the outcome.

Therefore, AI agents are much more relevant for leaders. Engineering leaders’ main job is not to write code - but to manage people and processes. What if, the agents could help you manage better?

Using agents for managing better

AI agents can significantly enhance the productivity of your engineering teams.

Today, there are two main ways for you to take advantage of them:

  1. Run them as “extra” engineers who write and review code autonomously: Agents can automate mundane tasks such as documentation and testing, and even completely write code based on requirements. They free up developers to focus on more creative and complex aspects of their projects, such as architecture or product decisions.
  2. Use them to make your own work easier: AI agents can connect to your entire stack - Slack, GitHub, Jira etc. and keep teams aligned - by creating tickets, identifying risks, increasing visibility and more.

These two ways are complimentary to one another, and you can choose one, or both — and start today.

Taking a leap of faith

person jump through building
Photo by Jakob Owens / Unsplash

Starting to use agents for you day-to-day teams’ work will require you to take a leap of faith.

We see three main obstacles with agents today:

  1. Accuracy: generic AI agents won’t do the trick for engineering leaders. We need accurate agents that we can trust, to do things like write pull request descriptions, Jira tickets, review code and more. They need to be familiar with our best practices, and have the ability to learn. There is a relatively new term called "Guided AI agents", which means AI agents that are guided by humans. Whenever they need more information or approval, they will reach out to a human for this information.
  2. Determinism: AI agents are not deterministic. This means that for some tasks that we expect the same outcome, different results will be given which might become a business problem. To overcome it, we can have a human on the loop - meaning someone can either chime in or overlook the process, making sure it fulfills the desired outcome.
  3. Collaboration with humans: communicating and collaborating is hard. As R&D leaders, we need to make sure our engineers communicate as often and as clearly as possible with other engineers and stakeholders. The same still holds true for agents: how can we make sure they communicate the relevant things, with the relevant people, at the right time?
  4. Collaboration with other agents: we will have to make sure our agents can collaborate with each other - for example, one working on Jira requirements, one writing code and one reviewing. How can they all play nicely together?

In order to start using agents as a leader, you would have to become an innovator, not a late adopter. It will require you to accept the false positives, the hallucinations, in order to create a better future. For yourself, and for the software industry.

The future

AI Agents are new and exciting. They can make the lives of engineering managers much easier - but with a cost. They will only get better with time - and it’s on us to make them better. We can use them for helping our engineers write code, or helping ourselves manage processes better and easier.