Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. Join them; it only takes a minute:

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

Charles Barkley was an excellent basketball player, a hall of fame, and a dream team member. He played for the 76ers, Suns, and Rockets. Yet he never won an NBA championship. Some might argue this was because he was never surrounded by other players of his caliber, and in the NBA, you can't win on your own.

So what does this have to do with programming?

How many of you out there feel like Sir Charles? Leading your team in every category, KLOCs, bugs fixed, systems configured... Always the one pushing for improvements, upgrading systems, negotiating with customers... Feeling like you are carrying the team. Anger just under the surface.

Only to retire eventually, without "the ring"1.

1: Keep in mind, Charles never blamed his team. He just performed at his best.

share|improve this question

closed as not constructive by Mark Trapp Feb 5 '12 at 20:26

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.

If you are the very best, all the time, perhaps you should look for a new place where people are better than you so you can learn from them? – user1249 Dec 8 '10 at 16:48
What is this "basketball" or "NBA" you're talking about? Just because I spend 12-18 hrs sitting in front of a computer doesn't mean I follow that. – Josh K Dec 8 '10 at 16:51
you yanks, always so full of yourselves – NimChimpsky Dec 8 '10 at 17:17
Question was closed. Nary a comment from the closers. I hate that. – dacracot Dec 8 '10 at 22:00
I actually read Gnarls Barkley, upon which the following lyric line popped up in my head: "I remember when.. .I remember I remember when I lost my mind..." So, does that make me crazy? =) – gablin Feb 23 '11 at 23:25

Yes, so I left.

Now I'm in a group with people smarter than me and I have to try and keep up. It's refreshing.

Maybe Barkley should have done what LeBron did and switched to a team he thought could win something.

You never know how a potential job/team change will work about before you make it, but if you are that unhappy you should find somewhere that will appreciate your skillset and passion.

share|improve this answer
He did, from the 76ers to the Suns. It almost worked. They made it to the 1992 Finals his first year in Phoenix, but lost. – dacracot Dec 8 '10 at 16:52
Looking forward to all the down votes from the Cleveland Fans ;) – Conrad Frix Dec 8 '10 at 17:09
@Conrad Frix: Cleveland doesn't have fans anymore. – Steve Evers Dec 8 '10 at 17:20
@Conrad: Too bad, it's still going. The coach says the memory fades, though (second write-up here). – Mark C Jan 31 '11 at 5:10

As a (seemingly) leader in your team, you should NEVER mention to your team (or your bosses) that you don't feel like you're getting the credit you deserve. If you really want to get the credit you feel you deserve I have a semi-wild suggestion for you -

Help out your team. Help them fix bugs, help them configure systems. When time comes, and someone says "Hey, great job on getting all those bugs fixed Joe" - let him take the credit. The people around you will know what truly happened and will respect you more for not playing the "I/Me" game.

Sometimes you're better off staying in the background and letting the team take credit for the work that was accomplished. If you're carrying the load you SHOULD NOT say as much. TEAMS succeed or fail, NOT people.

share|improve this answer
Agreed. But you are missing the point... Barkley never (at least as far as I can remember) complained about his team. He won MVP honors, not something rewarded to a non-teamplayer. But his teams never got to the final prize. – dacracot Dec 8 '10 at 17:42
I apologize if I missed the point and/or misunderstood the question - I am not up to speed with Basketball and it's players, at all =) – Jason L. Dec 10 '10 at 15:16

There's always something to get better at. If you're in that situation, sometimes you can make the whole team better, too.

Grow as a mentor and a coach, and you may find that those folks you led are now challenging you to keep up.

share|improve this answer

If you're not consistently working with people who are better than you it's time to change jobs.

If you're as good as you say you are and you know it, it's time to either:

  1. Apply to work places that's very difficult to get into, places that aren't accepting new hires, places that will only hire the very, very best, or

  2. Start your own company and hire people who are better than you, becoming a place that only hires the very, very best.

Your anger under the surface might well be anger at your underperforming co-workers, but if you really want a championship your anger is better directed at yourself for still being there. You've changed jobs before, but perhaps you're still looking for opportunities in the wrong league.

Yes it will likely be difficult, but "it's easier said than done" is true of all things worthwhile.

share|improve this answer

I have had this, but only during my non-programming related job during university but I don't think it would matter too much. It is obvious that there is always going to be one person who is better than everyone else: Its impossible to find a dev team of 10 people who have equal skills. And why would you want to? If everyone has equal skills, then no one will learn anything.

I only entered the world of work 2 years ago, but I have used the smarter people in my team to learn and to expand my own knowledge and I would hope that by learning from them, I can catch them up and take away some of the things they are better at. If one person has to carry the team, I would hope it would be to a better place where the whole team improve to (nearer) the standard of the better person. Its a big responsibility but one that is important in any dev team

share|improve this answer

Teach, don't preach. It's always fun to make yourself sound smart and make other people feel dumb/inferior, but that won't help them. Some don't want to hear it, so don't waste your time on them. There will be at least one or two people willing to listen and learn. Pass on what others have passed on to you.

share|improve this answer
My vast majority of my teammates like me. What I enjoy most is teaching. I've considered changing careers to actual teaching, except that the pay sucks. – dacracot Dec 8 '10 at 17:34
@dacracot So call it training, mentoring, coaching, or consulting; then it pays better. ;) – Alex Feinman Dec 8 '10 at 17:38

Honestly I would rather have people pay me better rather than Corporate A** kissing.

I feel if they appreciate me, I expect to be paid better/ better bonus.

Good words alone isnt going to fill my stomach nor feed my family.

share|improve this answer

Developers come in three flavors ... Einstein, Elvis and Mort. You know the Einsteins ... it might be you based on your question. You know the Elvis ... he's all over twitter, posting blogs, trying to get famous from being a developer. And, you know the Mort ... he shows up at 9:00 a.m. does a decent job and wants to go home at 5:00 p.m. When you're Einstein, it can be very challenging dealing with Mort.

Mythical Man Month cites a study that indicates there is as wide as a 10:1 ratio between good developers and average developers ...

Within just this group the ratios between best and worst performances averaged about 10:1 on productivity measurements and an amazing 5:1 on program speed and space measurements!

It's just a fact of life in our industry that there is going to be a large disparity between the average and star performers. To continue your metaphor, have you ever seen a pro basketball player playing against non-pros? It's like that.

The best thing you can do for yourself is to recognize it and embrace it. Get into Mort's head, understand him, understand what he will do and what he will not do and use it. Be patient with Mort, teach him, teach him again, explain it, explain it again. It's all you can do. At the end of the day, you will probably leave your company and wind up at a Microsoft or Google or somewhere where Einsteins (and Elvi) are appreciated.

share|improve this answer
The 10:1 good to bad ratio applies to companies as well. There is evidence that good companies tend to hire good developers and there isn't an even distribution. – JeffO Dec 8 '10 at 18:58
My problem with this depiction of "Mort" (besides the categorization into "three flavors") is that is how the on-board shuttle group does its work: like professionals (or "adults", as the 1996 article said). Of course, working to get it right instead of to meet a deadline allows helps, but don't let that draw attention away from the meticulous preparation and thorough communication the team has. Summary of four main points. – Mark C Jan 31 '11 at 5:03

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