Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

If you can choose whether to work on a project alone or in a team, what would be your choice and why? And if you want to work in a team, what is the ideal team size?

share|improve this question

closed as not constructive by gnat, Jim G., Tom Squires, Tamás Szelei, maple_shaft Jul 20 '12 at 14:31

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.If this question can be reworded to fit the rules in the help center, please edit the question.

i think if the team leader is a good planner then you wont have a problem else you will have issues in code reviewing especially when the other team members may quite then theirs bugs will turn to you and that really hurts . in maintaining and testing . ouch – shareef Nov 1 '14 at 8:38

12 Answers 12

up vote 35 down vote accepted

I like working in a team. It's nice to be able to split up some tasks, bounce ideas off of each other, etc. I find that the code and the project generally benefits from that sort of collaboration.

But, if the team isn't cohesive, then I'd rather work by myself to get the job done.

As for the ideal team size, I think it depends on the size of the project, but anywhere from 2 to 5 people would work well.

share|improve this answer
+1 for "if the team isn't cohesive" – Conrad Frix Sep 15 '10 at 21:27
+1 for being able to bounce ideas off of each other – Terence Ponce Sep 16 '10 at 0:39
Split the task and share blames too ;) – pramodc84 Sep 23 '10 at 4:42
@pramodc84 share blames? It's always the others fault! :P – cregox Mar 31 '11 at 0:11

My preference is to work alone. I'm a total control freak and unless I totally trust the other programmers on a team and they're top notch, I'd rather do it myself.

share|improve this answer
+1 for being honest. – Ali Sep 16 '10 at 3:02
reminds me of myself :D – Kemoda Jul 20 '12 at 12:10

As usual, it depends. In most professional projects is better to be a team member. But I like work on personal projects alone. Is seems obvious but I like because I can exercise another kind of work, another kind of process and thoughts. Working alone I have different challenges.

share|improve this answer

I prefer working on a team because it's always good to have somebody pretty familiar with the work that I can bounce ideas off of. Being able to pairing as well on tasks helps out a lot.

As for an ideal size, it really depends on the size of the overall project, but I'd say no larger than 5-7 people.

share|improve this answer

I prefer small teams by far. No more than 3 people.

There are some nice things about working alone though. You don't have to convince anyone on a certain way to do things. Just do it and move on.

share|improve this answer

Depends on the size, although for me the smaller the better.

Small Projects - I hate working in a large team for a small project. If I do it myself, I don't have to worry about merges, branches, keeping coding standards consistent, other people's IDEs, other peoples coding speed, other people, and all the extra headache that comes along with a team

Big projects - In big projects where its just not possible to do it alone or X is really complicated, I would like to work in a team, just to help divide up the work. If we keep things seperate enough, then I'm perfectly fine. Its the separation though that's important. If people are working on my module at the same time I am, then I get frustrated.

share|improve this answer

It´s always more fun to work as part of a team. Also, you'll learn more. Anything up to 4-5 I think it's great, as you can really work with everyone and not making subgroups. Maybe the ideal number is 3 as the communication can be extremely fluid and productive.

But for small projects you can do some interesting stuff working by your own. But usually you will tend to generate dirtier and less understandable code, as you can have all the project in your head and don't need to show/explain/coordinate with no one.

share|improve this answer

Smaller is better, but two (good) heads are better than one. The larger a team grows, the harder it is to maintain cohesiveness, conceptual integrity, forward progress and even good morale. Management of the group as a whole is far more important after it grows beyond a small handful.

I've been working as the sole programmer in a two-person partnership (the other person is a domain specialist) and I like it pretty well, but it would be nice to have another software type to collaborate with and to be able to have some kind of division of labor. Having to know everything about everything at every level is quite demanding.

share|improve this answer

It always depends on the size of the project. For small pet projects, I prefer doing it alone, but if doing work as a freelancer it is good to have a partner with whom to discuss design ideas and complement yours.

Also, it is good to have a partner for peer reviews and to have someone to laugh about your customers' crazy ideas. I have been working in a 2-3 person team for some years now.

share|improve this answer

In an university setting, I've found out that if you are in a team you'll have to wait for the other to finish something. If he has other things to do and thus unavailable, this tends to be less productive for the project.

Thus, in this setting I rather like to work alone than in a team, but in a work setting it would be the reverse...

share|improve this answer

I love socializing with other people and I love bouncing ideas off of other people, but give me work to do alone and it will be completed with a coherent, if not elegant, design and few, if any errors.

share|improve this answer

I prefer teams and I also prefer teams with high caliber developers for the same reasons as others have posted. Always good to learn from your peers. Heck that's why I lurk here. :)

share|improve this answer

Not the answer you're looking for? Browse other questions tagged or ask your own question.