How to split work when building a large system?

When working on building a relatively large software system (such as an HR or enterprise system), what is the best approach to structuring the work?

  • Is it better to start with a high-level general plan and then continue development across separate chats for each part?

  • Or is it preferable to create a detailed plan upfront before starting implementation?

From an AI model perspective:

  • Is using a large-context model like Sonnet 4.5 more effective?

  • Or does using a more focused model with a smaller context like Opus 4.5, combined with proper task splitting, lead to better results?

What best practices would you recommend to avoid loss of accuracy or inconsistent decisions when working across multiple chats?

Thanks in advance.

1 Like

Based on my experience working with enterprise-level monorepos, workflows tend to vary by person. From my perspective, I build strictly based on requests from the Product team.

Because of this, it is better to maintain two distinct types of documentation rather than mixing them:

  1. PRD (Product Related): Covers user stories, acceptance criteria, and the general roadmap.

  2. RFC / TRD (Tech Related): Covers technical design, frontend, backend, and database schema.

The Workflow:

  1. Define the Scope: Start with the PRD.

    • Example: Create an HR System MVP.

    • Goal: User onboarding and ability to clock in/out.

  2. Technical Design: Create the RFC/TRD based on that PRD.

  3. Breakdown: Split into milestones (MVP, V2, etc.) with specific features and timelines.

  4. Execution: Convert the RFC/TRD into a task list or GitHub Issues. This becomes the concrete starting point for development.

You can check a sample plan here: https://github.com/naufaldi/excalidraw-clone/blob/main/docs/todo/plan.md

1 Like

Thanks a lot, my friend! I really benefited from your answer — it was very clear and helpful.

By the way, which MCP tools do you usually use?

Hi and welcome!

Are you familiar with rules/commands/skills ?

I recommend to manage large codebase with agents.md for larger folders to help any LLM to get a clear understanding of the context/what you want and the bonus is that you don’t “wast” tokens.

Hello,
My knowledge of these matters is still limited,
so do you have any advice, guidance, or documents that I could review?
Thank you for your interest.

1 Like

If it’s a collaborative development project involving multiple people in an enterprise, it’s best to have a clear division of labor. If it’s a solo development project, plan ahead.

I recommend to start here: Cursor Learn

1 Like

if you use github you can also have branches, so you can have one thing in prod and anouther in dev. this will prevent somthing from compleatly braking. anouther thing is you can open a new branch for diffrent featurs. this keeps things seaprate.