, coding agents have become more and more prevalent. Initially, coding agents could only auto-complete specific lines of code. We then experienced how agents could interact with a single file and make changes to entire functions. After this, we started seeing agents capable of keeping track of and updating code in multiple files.
Now, coding agents are extremely capable and can work across multiple code repositories, even implementing entire features with no need for human intervention.
The capabilities of coding agents have opened up a whole new world of productivity for software engineers. In this article, I’ll highlight how coding agents have increased my productivity as an engineer, and how I leverage coding agents maximally by running multiple in parallel.
I aim to create a high-level overview of what coding agents can do for you and the techniques I utilize to get the most out of my coding agents by running them in parallel.
Why run coding agents in parallel
Just a year ago, it was almost unthinkable that you could be programming on multiple projects at the same time. Programming was known as a very high cognitive effort activity, where you had to minimize context switching.
If you want to take full advantage of coding agents, you need to run them in paralell. And if you’re not taking full advantage of coding agents, you’re falling behind
I still recommend minimizing context switching. However, the capabilities of coding agents have gotten so far that if you don’t run multiple in parallel, you’re falling behind.
When spinning up a coding agent, you usually start it on a task by giving it some directions and asking a few questions. After this, however, the agents start working, and it can take 5-20 minutes before you need to interact with the agent again. Instead of waiting for this long, you spin up another coding agent. You can then continue this cycle of spinning up new agents until you have to interact with the first agent again.
Simply put, the reason you should run multiple agents in parallel is that this is the way to achieve maximum effectiveness as a software engineer. You could, for example, look at the creator of Claude Code, Boris Cherny, on X.
He posted a thread about how he utilizes Claude Code, where he highlights how he runs 10-20 agents in parallel at any given time.
My parallel coding framework

In this section, I’ll highlight my framework for working with multiple coding agents in parallel. It’s a simple four-step process
- Find the most high-impact task you can do
- Open up Claude in plan mode, and discuss with Claude how you can solve this task. Feel free to have a longer discussion here, and spend 15 minutes on properly shaping the task. Make sure the agent has all the permissions it needs, so it doesn’t interrupt you
- Find the second-highest impact task, start planning, and spin up this agent
- Continue down your list of high-impact tasks. When you have to interact with the first agent again, you can stop spinning up new agents and try to complete the tasks you’re working on.
There are three main requirements if you want to use this framework.
- You need a good list of prioritized tasks, based on a value-effort graph
- You should be using plan mode liberally
- You should have a simple way of spinning up many agents in parallel. I use Claude Code, though there are many other options out there

I’ll now have a section highlighting each of these requirements.
Keeping a list of prioritized tasks
This requirement is, in my opinion, severely underrated. You should, at any given point, keep a list of the most high-impact tasks you can do. Preferably, you also combine this with the effort required to complete the task, and you have a simple priority list.
I think keeping such a list has always been important. It’s easy to complete a lot of tasks nowadays, simply using tools like Claude Code. However, if you’re not working on the highest-impact tasks, it doesn’t really matter. I often think of the quote below from Elon Musk when prioritizing tasks.
The most common mistake of a smart engineer is to optimize a thing that should not exist
Thus, you should be using project management tools such as Todoist, Notion, Monday, or similar to organize and sort tasks based on the impact they have. Having this list will then make it much easier when you want to spin up a new agent, as you simply pick the most important task from your prioritized list.
Use plan mode liberally
A common mistake I see people make when interacting with coding agents is to give it vague instructions and simply spin it up. This simply put doesn’t work.
You need to provide your agent with elaborate and detailed instructions that, with minimum ambiguity, tell the agent what to do.
The best way to do this is to use plan mode and not be afraid to spend time in plan mode. Whenever I start a new agent on a complicated task. I’m not afraid to spend 20 minutes simply chatting back and forth with my agent on how to do an implementation and how to handle edge cases.
The 20 minutes you spend interacting with your agent are easily regained, since your agent will make fewer mistakes. Furthermore, you’ll have to iterate less with your agent after the implementation is done, to have the exact solution you desire. Plan mode saves you time in the long run.
The same concept applies to the LLM you’re using to code with. Some people are tempted to use cheaper and faster models when implementing some features.
I’d argue, however, that this simply ends up costing more and taking more time than if you used a larger and more expensive model.
This is because, though the larger model will take longer to come up with an initial solution, the agent will make fewer mistakes, and you’ll spend less time having to iterate with the agent to get the exact solution you want.
Tool to spin up multiple agents
The last requirement I highlighted was to have a simple tool to spin up multiple agents. Up until recently, I was using Cursor to run my agents. I realized , however, that Cursor isn’t the most optimal tool when it comes to spinning up multiple agents, since it’s hard to have an easy overview of all your agents. (Cursor still has its benefits in other situations, however, so I’m not counting it out).
For running parallel agents, I thus recommend using a CLI-based tool like Gemini CLI or Claude Code. Furthermore, I use Warp terminal. With this setup, I can have one terminal window open and have all my coding agents running from this terminal.
I can then split my terminal into multiple tabs and spin up my agents. You can see what my terminal looks like in the image below:

Conclusion
In this article, I’ve covered how to run multiple coding agents in parallel. I discussed why you need to run multiple agents in parallel, highlighting that this is how you can achieve maximum efficiency as an engineer. Furthermore, I covered specific techniques I utilize to be effective with multiple agents. The main points are to keep a good list of prioritized tasks, use plan mode liberally, and have a CLI tool to spin up agents with. I think coding agents are the future of coding, and spinning up multiple agents in parallel should be the default behaviour for a lot of programmers out there. If you haven’t started already, you should begin practicing coding in this way.
👉 My Free Resources
🚀 10x Your Engineering with LLMs (Free 3-Day Email Course)
📚 Get my free Vision Language Models ebook
💻 My webinar on Vision Language Models
👉 Find me on socials:
🧑💻 Get in touch
✍️ Medium