News for hackers. Stuff that matters.
Re:How to Pick Your Battles on a Software Team by jacquesm on Tuesday June 21, 2016 @11:22AM (#11946315)
There are team players and there are solists, it's rare to find people that can be both.

If you feel that 'software is art', that 'you are going to have problems with ego' then probably your view is that of the solist, and likely not of someone who would be happy in a team unless they get to call the shots and impose their will on others.

Good teams simply follow the leader and take their paycheck. Great teams cause the team members to grow and will produce work that none of the members individually could aspire to. Great teams know the strengths and the weaknesses of the members, and they themselves know these too.

If you want to phrase working together in terms of 'battles' then you've already lost.

And if you feel that if there is no mathematically correct answer about something, just aestetics or simply choice and the end result is less important than whether or not it was your way or the other persons way then I again conclude that you are most likely not a team player.

And there is nothing bad in that, there is definitely room for solists. But if you are part of a team then you have to play by team rules, otherwise it becomes a war zone with bad results for the project and the health and well-being of the rest of the team.

Nobody needs to 'swallow their ego' in order to present an option, the worst that can happen is that a particular road isn't taken, as long as you don't identify with the road as yours you'll do just fine. But as soon as you see the roads taken as validation of your ego then you are on very dangerous ground.

Re:How to Pick Your Battles on a Software Team by mathgeek on Tuesday June 21, 2016 @01:58PM (#11947855)
> There are team players and there are solists, it's rare to find people that can be both.

I think you're trying to fit human beings, which are extremely complex creatures, into an artificial black-or-white definition. I would even argue that no one in the world is exclusively a soloist or a team player. Most people, if not everyone, adjust their attitude to who they are dealing with.

For example, a given individual may be a soloist on one team, but a team player on another team, based on the experiences they have had on said teams. They also may be a soloist when dealing with someone they don't respect, or a team player when dealing with their boss. Just examples.

Re:How to Pick Your Battles on a Software Team by dasmoth on Tuesday June 21, 2016 @02:01PM (#11947888)
Any thoughts on where the best opportunities for those you'd describe as solists (not a term I've heard before -- I initially read it as "soloist") currently lie?
Re:How to Pick Your Battles on a Software Team by DougWebb on Tuesday June 21, 2016 @05:02PM (#11949392)
I'd say it depends on just how much of a 'not team player' you are. If you want to be completely independent, developing small mobile apps, mods for games, Wordpress/Bootstrap themes, and projects like that where you can work for yourself and by yourself might be ok. If you want to code alone, but you can handle having a customer having the final say on any decision they care about, you can become an independent consultant/contractor. Next rung up on the teamwork ladder would be your typical open-source or small-business projects, where you work by yourself most of the time but your work needs to be reviewed and sometimes changed, and others will typically have the final say on decisions.

You say "best opportunities". If you're looking to earn a good living, that's hard to do solo. Very few people are good at all of the tasks that go into software development (and I'm including the non-development tasks, like sales and marketing of both the product and your development skills here). Also very few people manage to create a runaway viral hit on a small application (like Flappy Bird), where your solo work can earn enough so that you don't need to worry about making a good living on the other solo projects you choose to work on. For most developers, learning to work on teams with others is a crucial development skill.

Re:How to Pick Your Battles on a Software Team by eikenberry on Tuesday June 21, 2016 @07:06PM (#11950201)
One possible opportunity for a 'solist' could be so-called DevOps positions. They are often structured more as a group of loosely cooperating people working on independent tasks. You will get a lot more say in HOW you do things vs a traditional software development team. You will of course have to deal with doing Operations like work in addition to the development (how much vary a lot based on the company/job).

This is where I've ended up due after many years as a software developer at start-ups because you can land a more stable job that pays better while not being driven crazy by micro-management.

Re:How to Pick Your Battles on a Software Team by jacquesm on Tuesday June 21, 2016 @04:00PM (#11948962)
Trouble shooter, smaller projects where the output is very well defined (for instance: tuning and optimization), indie games.