So here's the deal:
I'm working on this project that is pretty large, and extremely nuanced (it's a solution for automatically drafting glass in a building after the building has been architected, but before construction). I'm working on a team with just one other person. He is a designer who has been in the architecture industry for several years and has partnered with the business owner to create this software. So, I'm the one who understands how software works and he's the one who understands how the architecture works.
Anyways, I am the only developer and have therefore taken on a ton of responsibilities, including architecting the entire solution, designing a database, organizing the workflow into three data-entry applications and one end-user application, choosing which technologies to use, building the entire front-end of those applications, and so on.
There are some things I love about being a solo developer - the codebase is all mine; I know it inside and out; and so on.
But I often wish I had another developer to take on some of the tasks and to collaborate with, and I feel like adding another developer to the team could greatly increase our productivity if we do it right.
However, I keep running into the idea of Brooks' Law that states:
Adding human resources to a late software project makes it later.
My question is:
Does this law apply to small teams like mine?
Everything I read on the subject has to do with teams at least several times as large as mine, with project managers and senior developers and such, so it's hard to relate to those examples. Articles consistently refer to the fact that a newcomer to a project ALWAYS has less experience in the project and therefore can NEVER contribute as quickly or as well to a project as those already working on it. However, in my situation adding one person is equivalent to doubling the number of software developers on the project, so there is bound to be a point where the increased productivity of having two developers exceeds the initial cost of training the new developer.
What tips or experiences do you guys have that could give me insight into how to know when and how to add another developer to the project?
Thanks in advance!