How to Work Effectively with Frontend and Backend Code

They are usually divided into different frontend and backend. The front end handles what the user sees, while the back end handles all the logic and processing. This is a natural separation of concerns used by many platforms because it works well.
However, when you make changes to your application, you often need to make changes to both the frontend and the backend. This is where full-stack developers come in: developers who work on both the frontend and the backend.
Working with both the frontend and the backend can be challenging, however, for a number of reasons:
- They are often written in different languages: frontend with TypeScript and backend with Python
- You have to deal with permissions and auth, and deal with challenges like CORS errors
- They are in different places and are used separately.
With the release of coding agents, working with both frontend and backend code at the same time has become easier. In this article, I'll give you a high-level overview of how I work every day with both frontend and backend code, and make sure the two systems integrate seamlessly.
Why work with both frontend and backend
The reason you use both frontend and backend code at the same time is out of necessity. Let's say you want to add a new feature to your app, where the user can save the chatbot's AI conversations and access them later.
This feature simply requires changes to both the frontend and backend. You need to update the frontend to display previous conversations, and you need the backend to handle the storage and retrieval of conversations. So, you don't have the option to work with both frontend and backend code.
In addition, as a developer, it is often more efficient to work with both the frontend and the backend. Imagine if you had to use the AI chat feature, and you were only working on the front end. You will need to use the frontend part of the course, and coordinate with another backend developer on how to maintain conversations. You will need to spend time discussing:
- A schema for maintaining conversations
- What data should be included?
- A conclusion must be said
This is very time consuming. If you've ever worked in a software engineering setting, you know how time consuming it can be.
On the contrary, if you do the work alone, you don't have to do any coordination and you can move at a much faster speed.
Strategies for working effectively with frontend and backend code
In this section, I'll cover some techniques I use to work more efficiently with both frontend and backend code. With the release of a highly efficient coding agent, this has become much easier, and you don't need to have extensive knowledge in both front-end and back-end coding to make it work.
Use workstations
Workspaces are an incredibly powerful feature when working with multiple repositories. You can do this with a Cursor using “Add workspace”, or with any CLI tool by pointing the agent to the repositories you want to work with. Now the model will have the context of both relevant caches and thus be able to use the full-stack solution at the same time.
The workplaces are amazing. Before I found it, I used to work with two separate Cursor tabs, one with the code-front and one with the code-behind. Then I make one change to the foreground, and manually update the background to accept this new change.
No wonder it took me years to figure out the features. Now, I just tell my agent to update the front-end according to some instructions, and it automatically updates the back-end with the corresponding code to accept the changes in the front-end. Of course, this works the other way around as well.
Monorepos
Monorepos are also very powerful. The opposite of a monorepo is that all your code is distributed across separate repositories (often called microservices). In my experience, this doesn't work very well, as it makes it difficult for you and your coding agents to keep track of where everything is.
Instead, I highly recommend moving everything to a monorepo, where you have all your code in one codebase. Now you can easily create rules, like pre-commit hooks, that apply to all your code and you don't have to duplicate them in multiple repositories. In addition, you can easily have AGENTS.md files that cover and describe the entire repository, so agents can easily track where everything is.
If all your code is in a monorepo, you won't even need workstations, as I explained in the last section. However, it is common to have a monorepo for the frontend/API code, and then a separate repository that handles more complex processing, such as running agents or document processing. So, you'll usually have to use workstations anyway.
AGENTS.md as context
Another very important tip is to actively use and update AGENTS.md. There are many alternatives to AGENTS.MD, such as CLAUDE.md, WARP.md, or .cursorrules. In my experience, however, AGENTS.MD is read by all coders, regardless of which one you use.
So I recommend using AGENTS.md because if you happen to change agents in the future, or your colleagues use different agents, you can all benefit equally.
You can have an AGENTS.md file in the root of your repository that provides a high-level overview of the repository, similar to a README. This can explain to the agent which folders contain which logic, making it easier for the agent to navigate through the code.
In addition, you can have AGENT.md in all subfolders. For example, if you have a service in one folder, you can have an AGENTS.md file there that describes how the service works, and any issues you should be aware of.
And I want to add that whenever you make changes to your code, be sure to update AGENTS.md. You can, for example, tell your coding agent to update the relevant AGENTS.md files for you, given what it learned in its last session, and it will automatically add the relevant notes. Be sure to push these changes to GitHub and, of course, so your colleagues can benefit from the knowledge you've gained.
The conclusion
In this article, I have discussed how to work efficiently with frontend and backend code. I started by explaining why it's important to know how to work with both the front end and the back end, highlighting that it's often the more efficient way to get things done. In addition, I explained in detail some techniques I use to work efficiently with the frontend and backend, including the use of Workspaces, monorepos, and AGENTS.md. I believe that in the future, we will all be full-stack developers, considering how coding agents work. The human engineer's job will simply be to coordinate all your agents in the most efficient way, to solve the most important problems, in the best and most efficient way.
👉 My Free eBook and Webinar:
🚀 10x Your Engineering with LLMs (Free 3-Day Email Course)
📚 Get my free ebook Vision Language Models
💻 My webinar on Vision Language Models
👉 Find me on social media:
💌 Stack
🐦 X / Twitter



