Hello @NachitoMax
First off consider setting up your project in Azure DevOps where you can organize iterations/task and sprints where you write out what needs to be done starting with the big picture moving down to task in a sprint. While writing out requirements you need to assign hours which in the end will give you an estimate of time needed to complete the project.
Considers in no specific order
- Experience of each developer when considering task
- Every project has scope creep which means at some point there will be backlogs (Azure dev ops accounts for this). At the start of the project customers need to realize this.
- Have standup meetings (if possible) every day where it's done in person, over Skype or Teams so progress is known along with problems encountered
- Have code reviews done e.g. a task is finished, before a commit is done review the code.
- Consider writing unit test so if something breaks run all unit test can greatly cut down on time to figure out an issue.
- Know the architecture e.g. platform, how to work with data e.g. Entity Framework, conventional data access
- Will a third party framework be used or internal framework, either way all developers need to understand them.
- Be sure to have a firm understanding for creating relational databases using many to many and one to many.
When I think of a large project, that's all I do they tend to have 1,000 plus users internally and external applications in the millions. Time to complete can range between eight months to one year. Generally speaking the first release (tends not to do much) is in the first month. I believe to release often so that there are no surprises to the users.
Usually at the end of a project there are lingering task that may not be considered to those that never done a larger size project so think about that too.
In closing, up front research is the key, for example if going with Azure DevOps it's going to take time to get up to speed if never used before. Also although Azure DevOps has stored for code an alternate is to use GitHub for source control but that is simply a choice.
Sample view of DevOps on a training project I wrote to teach with.