I can deliberate on this a little bit because I actually started a small development team from the ground up, all open source. The team I have has been working on a game project that I can’t really share here because it has moved from Java to JavaScript. We have been at it for at least five years and it is completely nonprofit. Let me be the first to warn you, starting a development team just because everyone knows how to program is a very small part of running a development team.
I have skills in art, music, programming, and customer service. Running the open source project took all of those skills and more. Here is the skills that kept me running this long…
Be well rounded…
Research everything you can about the game you are making, and the process it takes to make it. Being well educated about a wide range of topics will allow you to solve issues early. Knowing mistakes previous people made will help you plan against them. There is never too much knowledge you can gain to prepare yourself for this undertaking.
Be prepared to work…
Hard work is the only way good programs get completed. If you or your team members do not work, then the project will always be at a standstill and never get done. Perseverance is always the key to success. As long as you keep working, it’ll motivate everyone else to keep working too. Don’t give up on your projects, and they will eventually get done over time.
Be clear in your goals…
This is by far the hardest part because it actually requires you to have good well rounded knowledge of your limits. If you haven’t made a game yourself, I can guarantee this is where 99% of teams fail to deliver. Having a plan and very clear goals of what needs to be done is exceedingly important for a project. It is also important that you take time to make sure the people understand what you want correctly. Having a clear design document does wonders for keeping a group task oriented.
Communicate
This doesn’t just include setting up a chat service. It also includes finding time to have meetings and opening yourself up to answer any questions. Knowing your team members strengths and weaknesses is all so important for keeping them interested in your project. Try to give them things that they are passionate about, but try to steer away from things that they have no idea how to do unless you are willing to do just as much work as they are to figure it out.
There is more, but…
I am tired of writing huge walls :-P. Building any project is a team experience with people. When you deal with people, you open yourself up to people problems and people issues. Always be mindful of why people are working for a project, and make sure to hold a high level of respect for their work. Remember, leading is not for everyone… It’ll test every skill you’ve learned and you still won’t get the results.
I actually have a computer science background, so I can only imagine how hard it’ll be for someone who doesn’t. For all those not scared away by this message, then good luck leading. Research, persevere, and succeed. 