Welcome to the Slashdot Beta site -- learn more here. Use the link in the footer or click here to return to the Classic version of Slashdot.

Thank you!

Before you choose to head back to the Classic look of the site, we'd appreciate it if you share your thoughts on the Beta; your feedback is what drives our ongoing development.

Beta is different and we value you taking the time to try it out. Please take a look at the changes we've made in Beta and  learn more about it. Thanks for reading, and for making the site better!

Ask Slashdot: Are 'Rock Star' Developers a Necessity?

Soulskill posted about 7 months ago | from the smashes-keyboard-after-every-performance dept.

Programming 356

An anonymous reader writes "Do you think so called 'rock star' developers are necessary at every company? Personally, I don't think so, and I equate it to not needing a college degree to work at Walmart. If you give every problem a complexity value from 1 to 10, and your problems never get higher than a 6 or 7, do you need people capable of solving the 10s? I work for a large software company and I'd rate myself a 7. There are more technically proficient developers, but I don't have an ego about my work, I work well with coworkers and customers, and I bring people up around me. Most 'rock stars' I've seen have been difficult to work with. Most of them are no longer with the company because they were terminated or quit for more money. Is this usually the case? Is it worth the trouble? (Note to any managers reading this: if you have a rockstar who is a pleasant person, pay them well; they are very rare.)"

cancel ×
This is a preview of your comment

No Comment Title Entered

Anonymous Coward 1 minute ago

No Comment Entered


Translation: (3, Insightful)

Anonymous Coward | about 7 months ago | (#44823359)

My coding is mediocre at best, and I know it. I still want to feel useful. Please say something nice to me. Please make me feel better.

Re:Translation: (1)

Anonymous Coward | about 7 months ago | (#44823429)

No. Translation: I'm not a jackass. I don't prance around arrogantly and tell everyone what a star I am (even though I'm not anywhere near as good as I think I am. But I don't know this).

Of course, that's going to get blank stares from a lot of the Slashdot readership.

Re:Translation: (0)

Anonymous Coward | about 7 months ago | (#44823477)

Clarification of the above (I was the one that wrote it): I meant that "I'm not anywhere near as good as I think I am. But I don't know this" applies to the "star" who prances around arrogantly, and that is not what the submitter of the article is like.


Jeremiah Cornelius (137) | about 7 months ago | (#44823711)

No definition provided.

The concept of "ROCK STAR DEVELOPER" is a fiction invented by professional recruitment outsources. All developers are "Side Men" - even if some are in the "Musical Director" category.

Re:Translation: (5, Funny)

Zero__Kelvin (151819) | about 7 months ago | (#44823845)

Clarification of who you are. You are a mediocre to below mediocre programmer with an inferiority complex. Your code is always bug ridden because you can't even review a simple Slashdot post properly before you hit submit. You regularly apply commits to the repo that pull the rug out from under the true developers, and you often screw the commit up because you just learned about revision control in the last year and still think SVN is where it is at. You have heard of git, but it is too complicated. You need antacids because you can't get the sour grapes out of your mouth. Did I miss anything? Oh yeah. That's right ... you are going to create a Slashdot account just as soon as you figure out how to do it.

Re:Translation: (0)

Anonymous Coward | about 7 months ago | (#44823483)

Translation: I'm not a jackass but I'm going to rate myself a 7/10 and claim that anyone who rates themselves higher is an asshole.

Re:Translation: (0)

Anonymous Coward | about 7 months ago | (#44823519)

(even though I'm not anywhere near as good as I think I am. But I don't know this).

I don't know about the rest, but this line is worth knowing. http://paulgraham.com/gh.html [paulgraham.com]

"But hackers can't watch themselves at work. So if you ask a great hacker how good he is, he's almost certain to reply, I don't know. He's not just being modest. He really doesn't know."

I agree with the general sentiment of the essay... which is to say this line from the summary... "I work for a large software company and I'd rate myself a 7"... is meaningless drivel.

the same in any job (0)

Anonymous Coward | about 7 months ago | (#44823611)

Rock star status in any job is always a problem... Not just in coding but particularly the flashy rock star CEO/CTO that get hired for obscene amounts of money. Which is where there driving force is incidently... Rock star status and money. Its the quiet introverts who are typically the best in these jobs.. For the long term IMHO. I am an extrovert BTW...

Re:the same in any job (5, Insightful)

hedwards (940851) | about 7 months ago | (#44823699)

I dunno, I think the guys in the band without a rockstar make a lot less money.

Re: Translation: (0)

Anonymous Coward | about 7 months ago | (#44823847)

I would probably fall in this compartmentalization. I only have two years of college. I am not cocky. When my boss (who has his masters) cant figure it out he brings it to me. I am also the 1 person in my dept that users prefer because I can translate between geek and English. I would leave for more money in a heartbeat but I am currently making 1/3 the national average. Under appreciated, under compensated, and generally overworked ... yeah I would leave. My loyalty is to my family not some 6-figure CEO who thinks I should work more hours for less money so he can skim off the profits.

Re:Translation: (0)

jellomizer (103300) | about 7 months ago | (#44823493)

Well for people who are good at what they do an know it, will tend to have a bit of an ego about it. As well as it comes easy to them, having people who struggle at the work gets frustrating.

I have been considered as one of those Rockstar developers. And it is a constant challenge to make sure I am not talking down to people, or seeming to snotty.

Re:Translation: (5, Funny)

Anonymous Coward | about 7 months ago | (#44824003)

And it is a constant challenge to make sure I am not talking down to people, or seeming to snotty.

Try this method:

"If the next thing you might say is douchey, skip it and think of something else. Repeat as necessary."

As a programmer, you'll immediately think of improvements to this algorithm, but if you are a good programmer, you'll understand the pitfalls of premature optimization. Keep it simple.

Re:Translation: (1, Insightful)

Anonymous Coward | about 7 months ago | (#44824013)

This is a classic big fish in a small pond scenario. Rockstars only hang out in small-ish shop or in small niche groups because they can make themselves look smart.

I've had the fortune to lunch with over a dozen Nobel Laureates in both physical sciences and medicine. These are the incredibly bright people who have no need to impress anyone; they are "made". Their characters vary from humble to brash to crass -- but by and large that's who they are and it's not ego driven. Rockstar developers have the need to prove themselves -- that drives the ego. Rockstar is an apt term -- they are flashy and generally there is *some* talent there, but very few rockstar developers go after the really hard problems. The best of the best developers are interested in solving hard problems; working on a hard problem is standing at the edge of a tall cliff -- it tends to wash ego and bravado away. The great ones have such capacity that they have no fear of teaching mere mortals because the mortals will never catch up. By way of analogy to lead guitar: there are guys who can play blazing fast arpeggios up and down a guitar neck, but those guys are not even in the same league as the ones who do harmonically interesting things. The former are "rockstars" , the latter are working on hard problems.

So to wrap back around to OP: if you are in a shop solving moderate problems then a rockstar is the best you are going to get; you have to decide whether to put up with the ego or muddle along with moderate talent. Shops working on hard problems don't have time to waste on rockstar egos.

Parent: you go to a McDonald's for lunch; the person at the cash register is working as hard as they can and just barely keeping up; this person is maximally employed and contributing as much to the economy as they can. You need to find a gig which better matches your capacity-- the problem is that with your arrogance nobody working on hard problems will put up with you.

straight to the top of the charts... (-1)

Anonymous Coward | about 7 months ago | (#44823365)


Relative (5, Insightful)

CrzyP (830102) | about 7 months ago | (#44823369)

The term "rockstar" is subjective and only douchebags use it. You could be considered a rockstar because you say you are bringing those around you "up" and are probably doing that by learning and training others about what you learn. You may not know how to develop something in a way when you start but you can learn and apply it when you do. I f-ing hate terminology like that.

Re:Relative (1)

CrzyP (830102) | about 7 months ago | (#44823409)

Also, to answer one of your questions, I don't believe all devs need to be rockstars at any single moment. If they want to reach for "rockstar" status, they need to be willing to learn and engage themselves in their work. They need to be willing to listen to those that are senior to them and they need to be able to bring something to the table that helps the team overall.

Re:Relative (1)

Anonymous Coward | about 7 months ago | (#44823473)

I've always avoided job ads containing "rockstar" and similar terms because I've always assumed it was used by organization that didn't know anything about software development

Re:Relative (5, Funny)

Anonymous Coward | about 7 months ago | (#44823491)

1 - 10? 6 or 7? I'm a Rockstar developer! I go to 11.

Re:Relative (1)

intermodal (534361) | about 7 months ago | (#44823503)

I consider Jimmy Page a rock star and I don't think that makes me a douchebag.

Re:Relative (5, Funny)

gbjbaanb (229885) | about 7 months ago | (#44823573)

Alice Cooper is a rockstar, and his Python skills are legendary.

Not sure what his Perl's like though.

Re:Relative (5, Funny)

intermodal (534361) | about 7 months ago | (#44823623)

I can't tell you much about Alice Cooper's Perl, but I do know that back in the day, Lionel Richie was amazing with Commodores.

Re:Relative (4, Insightful)

ZahrGnosis (66741) | about 7 months ago | (#44823653)

Agree with parent (CrzyP)...

Specifically, though, if they are "difficult to work with", then they probably aren't the best programmers. In that case, "Rock Star" may actually be a good term... people that are extremely talented at doing something, but do so by their own rules, frequently high, often attention grabbing and lacking focus or team spirit. (Not that there aren't great real rock stars, but you get my point). Okay, maybe that's an exaggeration, but still...

What you do need are top tier developers, forget what you call them. You can get to the top tier by having raw talent, or by being well disciplined. Working well with others is a boon; building code that is reusable, well factored, documentable and maintainable. If you have five team members each with five different strengths but no one-developer-to-rule-them-all, you can still build a fantastic team and great software. You need programmers who can mentor so that the rest of the team can improve. Toss the people that don't work well on a team, and while you're at it toss the managers that prefer hard-to-work-with people, or that can't manage teams of normal people. This is particularly important if your software is going to grow... individual "rock stars" don't scale.

Re:Relative (1)

Zero__Kelvin (151819) | about 7 months ago | (#44823861)

"The term "rockstar" is subjective and only douchebags use it. "

I just signed with a major label you insensitive clod!

Re:Relative (3, Interesting)

Anonymous Coward | about 7 months ago | (#44823863)

I've most commonly heard "rockstar developer" from HR people who want to flatter candidates. They then proceed to hand me a pile of shit resumes of engineers who can barely code fizzbuzz. But it's common knowledge that engineers can vary in productivity by more than 10x (IIRC, IBM studied this), so I think we all know what they're referring to, even if the term is obnoxious.

The thing about those engineers is that there's probably 2-3 times as many engineers who think they're in that category as there are engineers who are actually in that category and those false positives are way more trouble than they're worth. But the true "rockstars" are definitely worth it, even if they're annoying to deal with. It gets even more annoying given how often they're right about points of contention. Still, if you can swallow your pride and simply try to learn from them and, to the extent possible, get them to explain their thought process whenever you hit one of those situations where they draw a conclusion that's different from the one that you do, you can get a lot better at your job.

And even if you think the problems you're doing are only 6s and 7s, you won't know if there's a 10 solution that's significantly better unless you've got someone that can come up with 10 solutions. That better solution can make everyone's life easier, even if you could have solved the problem differently.

shut up. (1)

geekoid (135745) | about 7 months ago | (#44823955)

everyone knwo what they mean:
Then prima donna,(early 90s)
Then [insert made up name] (97-2000)
now it's rockstar.

Next week it will be 'earwig' or some other nonsense.

What is this shit? (0)

Anonymous Coward | about 7 months ago | (#44823375)

AC posting a nothing "news". All together now: aaassssttttrooooturfing. Click away, comment some more, ad-ad-ad-impressions. moneymoneymoneymoney.

Re:What is this shit? (0)

Anonymous Coward | about 7 months ago | (#44823603)

Click away? There's nothing to click on.

Re:What is this shit? (0)

Anonymous Coward | about 7 months ago | (#44823651)

Someone at Dice is trying to justify purchasing this crappy site.

Re:What is this shit? (0)

Anonymous Coward | about 7 months ago | (#44823761)

I like how a thread full of ACs are complaining that some AC posted something on /.

Yes I Am... (0)

Anonymous Coward | about 7 months ago | (#44823403)

As Above, of being an AC prevents this being a boast...

Yes (1)

Tim12s (209786) | about 7 months ago | (#44823419)

There are two problems. (a) arrogance on behalf of management thinking that they dont need to pay their staff, (b) arrogance on behalf of rockstars who think that they can disrupt the company as a result of their ego.

Now...while this sounds obvious, what about those rockstars who do not disrupt the company? Personally.... I'd rather have 10 rockstars who can work together than 10 average people. Yes... its unlikely... whoever is posting this is short-sighted.

FACT: Rockstars will find creative solutions to the impossible - if you will let them.

FACT: A good team of average people, working together, will accomplish more than a single person over the course of two months.

FACT: Not have both working together is a result of POOR MANAGEMENT.

Re:Yes (2)

zbobet2012 (1025836) | about 7 months ago | (#44823595)

FACT: A good team of average people, working together, will accomplish more than a single person over the course of two months.

This is categorically false. Individual output of programmers vary by an order of magnitude (10x source [construx.com]). Literally one guy can be worth ten others. And this is why the "do you really need rockstars" is always a yes. Even if you are not trying to solve hard problems you can either hire 10x guys @ 50k a year or one guy at 150k a year. You make the choice.

Re:Yes (1)

jedidiah (1196) | about 7 months ago | (#44823783)

Idiots bring everyone down as much as assholes do. The only thing that really matters is results. Can you use what they produce? Can you maintain it? Can someone else pick it up and continue? This can apply on both sides of the spectrum as a mediocre contributor may produce garbage and require babysitting.

Re:Yes (1)

forkazoo (138186) | about 7 months ago | (#44823841)

This is categorically false. Individual output of programmers vary by an order of magnitude (10x source [construx.com]). Literally one guy can be worth ten others. And this is why the "do you really need rockstars" is always a yes. Even if you are not trying to solve hard problems you can either hire 10x guys @ 50k a year or one guy at 150k a year. You make the choice.

  "Do you really need rockstars?" is absolutely not always a yes. But, there are indeed cases where that's true. I recently left a day job, and I have some obscure specialities, so I have basically declared myself a rockstar. My old job was interested in knowing if I would be available to do freelance work. I said yes, but gave them a day rate that was probably much higher than they were expecting. So far, they haven't needed me, which is just fine. Eventually, they may well wind up needing me because they know I would be able to do in two weeks some things that it would take them months to get a generic "Okay" programmer up to speed enough to even start figuring out. The trick is to always take it on a case by case basis. Sometimes you have no need for a rockstar. Do your project with a great team of competent developers who are great to work with, and deliver a great product. Every once in a while, you want to do a project that you can't do alone because there is some obscure specialty that some insane jackass knows inside and out. 9 time out of ten, rockstar isn't as valuable to you as the day rate. But, every once in a while, yeah, something comes up where the cost of dealing with a lunatic is well worth it. Same as with any other developer, or any other job, you make a cost benefit analysis about the particular situation. There isn't a useful "always."

Re:Yes (1)

You're All Wrong (573825) | about 7 months ago | (#44823857)

So very wrong.

One guy *can* be worth 10 numbnuts, but GPP explicitly said "average" not "bottom of the heap". The source you link to even supports the fact that the top of the heap are only about two and a bit times as productive as the average. Add to that the fact that prima donnas can be positively damaging to anything apart from their own personal pet projects, and the "Rockstar" really isn't that great a deal at all. The only thing one 150k a year guy is good for is one-man projects.

I'm lucky to work with a bunch of right-hand-side-of-the-bell-curve engineers who all like cooperating and sharing information, and are never afraid to ask for additional input - nobody thinks of themself as, or wants to be, a rockstar, and that's about the best scenario you can hope for.

Speaking as a rock star... (0)

Anonymous Coward | about 7 months ago | (#44823425)

I'm only unpleasant when you expect me to spoon feed you what I learned the hard way.

Re:Speaking as a rock star... (1)

Attack DAWWG (997171) | about 7 months ago | (#44823565)

When someone calls themselves a rock star, that's a pretty darn reliable indicator that they aren't very good. Certainly nowhere near as good as they think they are. It's also a pretty good indicator that they are arrogant and don't get along with people very well.

Re:Speaking as a rock star... (0)

Anonymous Coward | about 7 months ago | (#44823663)

don't get along with people very well.

Eh, such people usually get along with other people just fine -- in a bar. They're usually a ton of fun, actually. At work, I avoid them. Developers are great when they are exceptional to begin with and do work that is beneath them -- then everyone is in awe at how great something that we all thought was boring and tedious could be if we were better. It's why people will pay a ton of money for a Dyson vacuum cleaner, or a MacBook Air, or a Moleskin notebook -- they are over-designed simple things that just work. So when someone says "I'm only unpleasant when you expect me to spoon feed you what I learned the hard way", that's a sign that you will never get such things out of them, because they will think it is beneath them.

Re:Speaking as a rock star... (0)

Anonymous Coward | about 7 months ago | (#44823911)

I'm not arrogant. I just know more than most people because I'm obsessed with programming. Some programmers only learn as much as they are forced to, and become angry and confused when pushed out of their comfort zone.

Necessity, no, but... (5, Insightful)

seebs (15766) | about 7 months ago | (#44823427)

You're conflating two unrelated things: Competence and attitude. You might find The No Asshole Rule an interesting source. People who can't cooperate with other people are not a necessity, no matter how amazing they are.

But... When all you have is a hammer, everything looks like a nail. The thing that makes exceptional developers exceptional isn't their very specialized ability to solve weird problems no one really needs to solve. It's their ability to spot an opportunity to replace a hard problem with an easy one, or to massively improve performance by solving a slightly harder problem. And that really is that useful, even if you don't directly see the benefits. You can do nearly everythign with plodding, methodical, mediocre work. Doesn't mean you won't be happier with the results if you have someone better available.

Re:Necessity, no, but... (1)

roman_mir (125474) | about 7 months ago | (#44823673)

Right, you don't need 'Rock Star' developers.
You also don't need 'Rock Star' sales people.
You don't need 'Rock Star' management.
You don't need 'Rock Star' marketing.
You don't need 'Rock Star' janitors.

You can live without any of that and actually be a profitable venture, but how are you going to improve, what is going to be a good motivator to try and achieve more, how will the company distinguish itself among all the rest?

An interesting study would be to compare long term survivability of companies with and without 'Rock Star' in the ranks and management.

Re:Necessity, no, but... (2, Interesting)

Anonymous Coward | about 7 months ago | (#44823893)

You're conflating two unrelated things: Competence and attitude. You might find The No Asshole Rule an interesting source. People who can't cooperate with other people are not a necessity, no matter how amazing they are.

But... When all you have is a hammer, everything looks like a nail. The thing that makes exceptional developers exceptional isn't their very specialized ability to solve weird problems no one really needs to solve. It's their ability to spot an opportunity to replace a hard problem with an easy one, or to massively improve performance by solving a slightly harder problem. And that really is that useful, even if you don't directly see the benefits. You can do nearly everythign with plodding, methodical, mediocre work. Doesn't mean you won't be happier with the results if you have someone better available.

+1. I've had the good fortune to work with some very good developers. My experience (or luck) was actually the opposite - they were quite nice to work with. Sure, they would get frustrated more often and more easily, would not tolerate inefficiency, and would get bored more easily, but never in obnoxious or unreasonable ways. You also automatically improve your own performance and make more of an effort to keep your foot on the pedal. That's some good stuff there!

But most of all, as OP said, the hardest thing to do in pretty much anything is to re-imagine a problem, and not just in an abstract way but in a practical way, and quickly solve the problems. Really good developers get good ideas and act on them quickly - and sometimes even without being told. Very often, it results in ah-ha moments for other users and for the rest of the team. This is not because someone did something esoteric, but because someone just went ahead with an idea of solving a problem in a different way and got it done in a proverbial weekend.

I've always imagined that this is the "hacker way" so I've never associated this mindset or set of behaviors with being a "rockstar developer" so I may very well be wrong.

Help them realize they're the asshole, with a book (4, Interesting)

PhrostyMcByte (589271) | about 7 months ago | (#44823927)

I just read the book Multipliers [amazon.com]. It is targeted towards managers, but I think it is useful information for just about anyone. This dev (who has so far shown no interest in joining management) certainly took it to heart. The book compares "diminishers" and "multipliers".

Diminishers, like your company rockstar. They need to know everything and have the last word. They can appear to be a team player when they're really just using people around them to prop themselves up. They strike fear into people who challenge them. They make large decisions by themselves, or take input from a small inner circle of people. They are at their A game, but diminish other people's output and potential. When people work with diminishers, they feel like they're giving 50%. It is a net loss.

Multipliers create an environment where people can give input with confidence, make mistakes, and learn from them. This doesn't mean they are soft. In return for this they expect greatness and weed out those who can't give it or who can't work with the team. They identify genius (described in the book as an innate, exceptional ability which someone may not even realize they have) and try to flourish it. A multiplier can still be at their A game, but puts emphasis toward helping others grow. When people work with multipliers, they feel like they're giving 150%.

It sounds a lot like some management BS and I'm sure I'm not selling it well, but it really is a great read. It has a lot of studies within tech companies, so it was generally very relateable. It helped me identify areas of improvement in myself, not just in my attitude but also to find opportunities to help others grow where I otherwise may have just taken control and pushed someone out.

Re:Necessity, no, but... (0)

Anonymous Coward | about 7 months ago | (#44823929)

>You might find The No Asshole Rule an interesting source. People who can't cooperate with other people are not a necessity, no matter how amazing they are.
I see you'd be the first to fire Linus Torvalds...

>You can do nearly everythign with plodding, methodical, mediocre work.
And this is why Microsoft Windows fails compared to Linux. Microsoft uses buildings packed full of mediocre developers following a methodical development system.

If you want good software, you need to pay the good price; and that's not just money. It's actually _managing_ your staff, not just hiding in your office and only doing quarterly reviews.

Yes I Am... (0)

Anonymous Coward | about 7 months ago | (#44823437)

Thanks to my special luck being an AC prevents people mocking me for leaving out the word "course"

Average is nice (1)

ColdCat (2586245) | about 7 months ago | (#44823441)

Why only talking about developers.
If you agree to have average Sellers, Average Marketing, Average Management, Average customer support sure you can have average developers.

You are just jealous. (0)

Anonymous Coward | about 7 months ago | (#44823445)

You are just jealous you are not Cliff Blizinsky, or John Carmack or John Romero and are stuck in a job where you already hit your pay limit because you are an average programmer making average programs and not cutting edge software. But the industry in general no longer has rock stars because now most of the work is done overseas.

I've worked at companies where the main programming was done in eastern europe, the artwork was done in columbia and the sound was done in China. We just had a handful of programmers who could put it all together and be able to know how it all works, etc.

You want blood? (0)

Anonymous Coward | about 7 months ago | (#44823457)

I was growing up with posters of star developers on my walls. I rate myself as 7
And now, I'm one of them.
Believe in dreams, man. And one day they will come true.

Halo effect (1)

JoeyRox (2711699) | about 7 months ago | (#44823469)

Rockstars beget and cultivate other rock stars, sometimes through obvious mechanisms like apprenticeships but many times passively by simply raising the standard of what is considered acceptable code. I'm amazed at the number of times I've worked with engineers who wrote poor code simply because they've never seen what good code looks like. This is especially true for our compatriots arriving from overseas, where code construction is not taught at the university and where they had no peers/rockstars to set an example. They didn't lack aptitude - they simply didn't know what was possible.

Rockstars are never necessary (5, Insightful)

Endophage (1685212) | about 7 months ago | (#44823487)

I'm a tech lead at a startup and have worked at mid-size companies (I've avoided large corporations). Even if your problems are difficulty 10, you don't need a "rockstar" to solve them. My experience with typical rockstar developers has been similar to yours, they work poorly with others, communicate poorly, and often write inscrutable code. I firmly believe that nobody is invaluable. No company can afford to have a person that were they hit by a bus, or just left, the company would fail.

There are plenty of developers out there that wouldn't be considered "rockstars" in the stereotypical sense but when given a problem, I know they will produce good, well thought out, performant code within a short period of time. During development they will seek out criticism from their peers (and they see the rest of the team as their peers) and the final solution will be respected and understood by the team. I think of these people as seasoned engineers, not rockstars and certainly not developers. Engineers break down problems and build a solution before they ever write a line of code. I also believe you can become a seasoned engineer rapidly, possibly even straight out of college. It's about perspective, not necessarily experience.

One of the most important things in an engineering group, in my opinion, is the ability to walk into a room, argue out a solution, possibly admit you're wrong and somebody else's solution is better, but know when to fight your corner, then leave the room as friends and colleagues, ready to build the solution together. The ego rockstars carry makes that scenario impossible.

Re:Rockstars are never necessary (3, Interesting)

Anonymous Coward | about 7 months ago | (#44823581)

You've confused "Rockstar" with "asshole". "Rockstars" are actually capable of "walk into a room, argue out a solution, possibly admit you're wrong and somebody else's solution is better, but know when to fight your corner, then leave the room as friends and colleagues, ready to build the solution together".

The sticking point is usually when poor or mediocre developers are incapable of doing the same, then they blame the "rockstar".

Re:Rockstars are never necessary (0)

Anonymous Coward | about 7 months ago | (#44823881)

He also confused "engineer" with "developer". Having 20+ years in the industry, and having swapped jobs and titles back and forth between these, I can definitively say there are people titled "developers" who are far better at code and architecting entire systems than others titled "engineers", despite his dismissive "ranking".

I suggest leaving his "I know the book by the cover" concepts to marketing and managers' political machinations. It has nothing to do with the quality of the work or the resultant technology.

Re:Rockstars are never necessary (5, Interesting)

geekoid (135745) | about 7 months ago | (#44823889)

"My experience with typical rockstar developers has been similar to yours, they work poorly with others, communicate poorly, and often write inscrutable code"
Based on that, you're experience is with people who aren't rockstars, but claim they are.

I worked with a guy who shaved 3 months off a year long project. This guy could sit down and just code.

Good, clean code the he documented. I learned a shit load, and not just about the language, but all the ancillary bits as well. like comments , documenting, and how to get clarification from users and deal with stakeholders.

Programming is a lot more than just coding. the sooner more people realize that the sooner we can move forward with actual computer engineering.

Re:Rockstars are never necessary (1)

Zero__Kelvin (151819) | about 7 months ago | (#44823891)

"My experience with typical rockstar developers has been similar to yours, they work poorly with others, communicate poorly, and often write inscrutable code."

There's only one problem. You just described the exact opposite of a rock star developer.

Re:Rockstars are never necessary (1)

Zordak (123132) | about 7 months ago | (#44823917)

often write inscrutable code

Which can lead you to acquire legendary status on Usenet if your name happens to be Mel and you use a MAXINT rollover and flag bit to address a jump instruction.

Reference (2)

Ancient123 (724901) | about 7 months ago | (#44823501)

A good "rockstar" coder in my books is one that you can ask reference questions to and get fast concise answers. "How do I do foo?" - " Lookup bar and baz on google" The quick redirection to useful information is super helpful to a large group of programmers.

Re:Reference (0)

Anonymous Coward | about 7 months ago | (#44823629)

I totally agree. Whatever you do, you will encounter hard problems, and having an experienced pro around to ask for help is invaluable so that the team doesn't get stuck.

Yes (4, Insightful)

msobkow (48369) | about 7 months ago | (#44823509)

The "rock start" developers are absolutely necessary, because in a *real* project they contribute the majority of the *tough* code for a system -- the code that is "greek" to the rest of the team, but which works.

I don't consider myself a "rock star"; rather I am dedicated and stubborn and hammer away at tough problems until I find a solution. But sometimes I fail to find a solution, especially with complex prioritization and queueing algorithms that have just too many special cases (one recent project in particular comes to mind.)

But I have great respect for the "rock stars", and I think it's worthwhile to deal with their idiosyncracies. But I'm good enough at my job that I can *talk* to them, and I'm egotistical enough to get in full-bore arguments with them and *demand* their respect in return.

Team efforts have never been for the faint of heart, chip-on-the-shoulder personalities. Your ego will be bruised and crushed if your teammates are worth working with, because *good* people have opinions, and will often disagree with you. Be prepared to defend your own opinions with vigour, and stop crying that people aren't being "nice" to you. The road to success in this industry is littered with the bodies of "nice" people.


No, not always... (1)

brokenin2 (103006) | about 7 months ago | (#44823515)

...but if you can get someone who's really good, and can also play nice with others, then I think it's well worth it. That's a pretty rare combo though.. Sometimes just because "others" sometimes won't play nice with people that are better than them because they're threatened..

If you ever have a problem of difficulty 8, and you've got a programmer of skill 7, don't even bother trying.. You're just gonna get a mess..

Absolutely. Otherwise, everything turns to crap. (0)

Anonymous Coward | about 7 months ago | (#44823531)

If you don't want a "ten", be prepared to pay double the "ten" rate to un-fuck the crappy code your "five" and "six" players crank out. Or ten times more if you hire offshore players because they are typically level zero or one, at least the ones the PHBs will hire.

Define "Rockstar" (4, Insightful)

EMG at MU (1194965) | about 7 months ago | (#44823547)

In my experiences as a C++ developer our challenges are mainly architectural. None of us are C++ wizards, we all have many C++/STL books on our desks and are frequently scouring forums when we don't know something. C++ knowledge or the lack of it has never been a problem. Chances are that one of us knows how to do that whacky thing you want to do but can't remember how to do it. If we don't know, its really not that hard to experiment a little and figure it out. Worst case were posing on stack exchange or some other forum.

Knowing how to develop a piece of software with an OO architecture in C++ is the skill that we find to be more important and harder to find in new devs. We have a few open recs right now and although we get many guys with years of C and C++ experience, few if any know anything about OO. Out of the current employees, less than half are 'good' at OO design.

I have worked with guys who can crank out thousands of lines of real time, embedded code for industrial applications. Globals everywhere, no understanding of encapsulation or data hiding, nothing even resembling an interface. That sucked.

Give me a good designer over a "rockstar" programmer any day.

Re:Define "Rockstar" (0)

Anonymous Coward | about 7 months ago | (#44823769)

My condolences. It is amazing that so many don't get the idea of a class and interfaces. OO has been around and the dominant paradigm for, what, about 20-something years already?

Re:Define "Rockstar" (1)

geekoid (135745) | about 7 months ago | (#44823837)

Just so you know, every company have worked with that goes on about OO and no one 'really does' OO were places where people bowed to Booch and didn't do any real thinking about their architecture.

I know OO, but I also no that with OO you can start to gather to much overhead; which can be important with certain kinds of work. Such as moving data byte by byte with a tiny footprint, where time is critical.
When I say time i'm talking milliseconds.

13 levels of indirection might be fine for a banking teller app, not so much for programming a robot.

Betteridge's law of headlines (1)

Imagix (695350) | about 7 months ago | (#44823553)

No. Your question has too many variables and attempts to assign an absolute to it. If you don't need a 10 and only need up to a 7, then ask yourself if you'd fire the 7 who is an egotistical narcissist. Having said that, you may find that the 10 can look at your 7 problem and say "but if you do it this way, your 7 problem is now a 4 problem".

Why does this stupid question keep coming up? (1)

Narcocide (102829) | about 7 months ago | (#44823557)

NO. The answer is NO, absolutely not, but only because the people you've been told are "Rockstar Developers" are actually promising rookies having smoke blown up their asses so hard they are floating on the air pressure.

Real top-notch developer talent doesn't have "3 to 5" years of experience. Real rockstar developers aren't working at your crappy web publishing sweatshop slinging Joomla and motherfucking jquery.

Yes (0)

Anonymous Coward | about 7 months ago | (#44823563)

Rock Star developers are necessary for people who need them. QED.

Define "Rock Star" (5, Insightful)

Anonymous Coward | about 7 months ago | (#44823571)

You need to define your question better.

If you mean "A coder who is very good at solving problems," then yes. Every project develops problems that brute force and more manpower can't accelerate. Someone who can break the logjams is useful everywhere.

If you mean "someone who is super-smart but also an ass," then no. I'd rather have a solid team beat on a problem for a week then allow a morale-killing ass to poison the environment.

If you are a 7 you need to do soemthing else (1)

Anonymous Coward | about 7 months ago | (#44823579)

Because 7 is terrible. You mentioned Wal*mart.

Not developer, but in general, I avoid rockstars (2)

gander666 (723553) | about 7 months ago | (#44823593)

As a product manager (yep, go ahead and rib me), I see the same thing. Companies are "looking" for rockstar talent, and they often find:
  1. What makes a rockstar at one place doesn't mean that stardom transfers. Unfortunately it will take 18 months or so to figure out that they may be brilliant, but intolerable to work with
  2. Rockstars are rare. You will probably overlook 10 or 20 very competent team players to find one, and you will likely be disappointed in the results of the one you do find
  3. Rockstars in general are miserable people to be around. Many people commented on this, but it really is true
  4. Rockstars are near impossible to manage. They believe they know more than anybody else in the room, and that they deserve to be god.(FWIW if you ever have to work with a graduate of MIT, you will experience this too, even if they are a wanker)

In short, even if they are brilliant, if they are an asshole (and many are) they will be miserable to work with, you will lose team members who will not put up with their shit, and in the end, your projects will not get completed. Oh, and they hate to document their code, because they don't think anybody else but themselves could maintain it, and they often whitewash error handling (their code is perfect and elegant afterall).

Depends what you mean (0)

Anonymous Coward | about 7 months ago | (#44823597)

Is a rockstar someone who refuses to share knowledge with other people, thinks his practices are best practices and refuses to accept input from stakeholders? If so, no, you probably don't need one.

Otherwise, if by rockstar you mean someone who knows the domain knowledge and development roadmap, keeps track of decisions made and knows how they'll affect the application so when someone says "hey lets make the baz function frobulate things" they remember that the bar function 3 years ago needed the baz function to wibble them and save everyone a whole lot of debugging when things suddenly stop working.... you probably don't need one of them either, but it sure would help.

Yes, they are worth it. (1)

ioconnor (2581137) | about 7 months ago | (#44823605)

Yes, they are worth it. However they need to be socially aware. And they need to be working in a decent environment. Perhaps some other criteria too. If they have this then they can take charge and accomplish magnitudes more than the normal time pusher. It's because they understand what is needed, have the tools to do it, are socially aware so they can foster team effort across departments, and a decent environment where there are no malignant workers to destroy from within.

Depends (1)

geekoid (135745) | about 7 months ago | (#44823613)

Start up willing to take the risk of 1 person building and controlling the code and possible the direction of the company? sure. I wouldn't but like I said weigh the risks.
A high paid specialist? absolutely.
A salary employee and an entrenched company to routing development ? absolutely not.

My rule is:
You can act like a prima donna, but you damn well better be a prima donna.

I manage a "rockstar" type (1)

Anonymous Coward | about 7 months ago | (#44823621)

I'm an above average dev recently promoted to director. I now manage a rockstar type guy who's output and code quality are leaps and bounds greater than anyone else in the company. To me, as far as the rockstar performers go, it boils down to personality. Luckily, the guy I manage is very friendly, forgiving, and honestly try's to bring the other developers to his level. Ironically, most of my work with this guy is keeping the project managers from taking advantage of him. Rockstar devs are such a rarity you can't really define them as a necessity. It's more like "look what i've found!" and then doing everything you can to hang on to them and keep them happy/motivated.

Not every situation is the same (1)

mwvdlee (775178) | about 7 months ago | (#44823655)

Since different companies make different products, they need different skills at varying levels.

More importantly, a "rockstar developer", as commonly understood, has only a very limited skillset; boundless technical creativity.
Sure, they may be awesome at thinking up solutions, designing algorithms and turning it into code.
That does not mean they have the right character traits to create solid testcases, hunt for all the bugs, tie up all the loose ends, write documentation, understand end-user needs, etc. All the other aspects that go into creating a finished product.
There is no such thing as a "team of rockstar developers"; such a group of people would simple be too limited in non-technical skills to cooperate on a single product effectively.

there are different types of dev and rock stars (5, Insightful)

a2wflc (705508) | about 7 months ago | (#44823695)

Many development project don't need a 'rock star'. They can be done with "typical" architectures, existing frameworks, and just need "assembly-line-type" workers for all of the steps. I'd even say "most" projects are like this and any project can survive without a rock star.

There are also different types of 'rock stars' and they can help on even the most basic project. In general, the 'rock star' can do any/all of these things, but what do they do on a day to day basis varies based on their individual "specialty"

* some can architect the "difficulty 10" projects so it can be implemented in assembly-line fashion by "typical" developers

* some can implement the "difficulty 10" projects that wasn't architected well (when a team of N "normal" developers would end up with a late and buggy implementation)

* some can debug like nothing most people have ever seen (they don't usually create difficult-to-find bugs but are a huge asset to the team when the bugs come up which can happen on even the most trivial project)

* some just implement so well (speed of development + lack of bugs) that they literally will be cheaper than a team of N people (so, to the manager they aren't necessary but would be preferred)

* some can mentor, and find other people's strengths, and reorganize efforts on the fly. they can help everyone else be more productive, and can adapt the process/team as requirements change and can be critical to delivering on time and above requirements especially when things go wrong.

* some can help where ever needed (front-end, db, back-end, sysadmin, security, build, etc) and can step in without losing a beat when another member of the team is out (sick, vacation, left for another job).

* some can find bugs in 3rd party libraries or system components (without the source code). find workarounds and/or patch those libraries to continue development quickly while sending the bug fix and appropriate level of explanation to the library developer to get a permanent fix. If you've ever been on a "difficulty 5" project which found a show-stopper bug in a critical 3rd party library during QA, you'll really appreciate this skill. I have seen one case on a "trivial" project where this skill was necessary and a few other cases where it really helped.

I've worked with a very small number of "rock stars" over 30 years. They all had multiple of the above skills. I've worked with 3x as many people who were considered "rock stars" (by themselves and sometimes others) but weren't. In almost all cases, the "fake rock stars" slowed the project down more than they helped and the team would have been better off with one less member.

Diva or not, you need two out of three things... (1)

eagee (1308589) | about 7 months ago | (#44823705)

There are three things that people really care about in an employee, quality work, meeting deadlines, and a pleasant attitude - and you only really need two out of those three. If you do good work and it's on time people will put up with how unpleasant you are, if your work is good and you're easy to get along with people will put up with missed deadlines, if you're on time and always a pleasure to be around people will put up with work that's not as good as everyone else. Ideally you want to shoot for three out of three, but sometimes you have to settle for less.

How do you know if you're problem's a 7? (2)

Shados (741919) | about 7 months ago | (#44823729)

If you don't have anyone who has handled a 10, how do you know you're really dealing with a 7?

I worked in consulting for a few years, and at some point i worked with a company where PMs felt they could do with only ever hiring college people and work on retaining them for 5-10 years+. So the majority of people in the department had never seen another company.

They ended up with fairly complex project, but had no clue they were complex.

A (much simpler but extreme example, this is a discussion forum, there were actual hard problems involved...) was when they had a database with products and prices, and to handle promotions, would add/substract the promotion from the ACTUAL PRICE. So if the base price changed between when a percentage promotion started and ended, the base price would be completely hosed.

Now that's a big "Well, DUH!" moment, but imagine the same situation with deep architectural problems.

They're worth it in a startup (or company start) (2)

euroq (1818100) | about 7 months ago | (#44823731)

I am considered a pretty good developer (the word "rockstar" is stupid to me - maybe I am, maybe I'm not). I came in at a startup almost 2 years ago, and to this day I am still fixing problems that the original developers left.

If the code had been written correctly in the beginning, we would have saved millions in man-hour-dollars. Millions.

No, you don't need them all the time, but when you are building a foundation, you need it done right.

Re:They're worth it in a startup (or company start (2)

You're All Wrong (573825) | about 7 months ago | (#44824019)

Agree. I have a similar perspective. I was once hired to do the work of half a dozen people. I had to once explain to my boss's boss's boss that my negative productivity (as measured by "metrics") was because I was *undoing* the work of half a dozen people. The negative productivity programmer does exist, and can be lethal in quantity.

It's good to have a few rockstars (1)

roc97007 (608802) | about 7 months ago | (#44823757)

> If you give every problem a complexity value from 1 to 10, and your problems never get higher than a 6 or 7, do you need people capable of solving the 10s?

I think "rockstar" is overused, but never mind.

It's important, I think, to have a few rockstars around if your environment is even moderately complex. It takes someone with serious skills, experience and insight to foresee what would otherwise have been "unforeseen consequences". Odd interactions with other apps, race conditions, initial condition issues, migration issues, maintainability issues, in "5 or 6" level apps may not be readily seen by a 5 or 6 level programmers.

It's probably true that not every programmer needs to be a rockstar. There's room for mediocre programmers just like in most other fields.

Rock stars are under valued. (0)

Anonymous Coward | about 7 months ago | (#44823763)

Based upon my 10+ years of experience as a developer/consultant/manager I would say that the difference between a good and great developer is huge. The great (or the rockstar developer if you prefer) has the ability to improve the output of every developer on a team by figuring out the best solutions, the best architecture and comes up with innovative new ways to solve old problems. I have never been to a place where *every* problem is a 6-7 on a scale to ten. There are always some problems which are more important. Had life been fair some developers would earn 10 times more than others (regardless of industry, quants don't count). I have never seen that happen, but I would gladly pay twice as much for a rock star developer than a mediocre one, since I know that his output will be more than twice the average.

Oh and also, some developers are basically just sinks, who take resources away from every one else. Throw them away as soon as possible!

Andreessen says that Google needs rock stars (2)

Coop (9778) | about 7 months ago | (#44823771)

"Engineers are now starting to get paid for their true value, which arguably has not been case for a long time, but it is now, and Google is at heart of this. Google discovered an algorithm change can generate another $100 million in revenue. So now companies are more willing to have superstars, and there are engineers at Goggle making tens of millions of dollars."

http://www.eetimes.com/document.asp?doc_id=1319417 [eetimes.com]

Depends if you care about the end result (1)

Sulik (1849922) | about 7 months ago | (#44823797)

My experience is that any project is as good as the best member of the team, eg: 100 monkeys will not produce something higher quality than a single monkey, but throw a single smart dude in the mix and things will look a lot different, though the smart dude may get tired of doing all the work of 100 monkeys and may develop an attitude (he might need more than a few extra bananas to stick around)

You never know... (1)

goffster (1104287) | about 7 months ago | (#44823801)

You never know you ever needed a Rock Star developer
until you find out what they can do for you.

Frequently it boils down to cost. They find a way to do
something with half the resources, or they find a way to double
your throughput with the same resources.

Either way, the bigger the company, the more it means.

Takes a 10 to solve a 7 (0)

Anonymous Coward | about 7 months ago | (#44823865)

Your day-to-day tasks should be solving problems below your competency level. A 10 should be solving 7-9 problems, and a 7 should be solving 4-6 problems.

I would never hire someone who actually finds their projects engaging and moderately challenging. It you want to be challenged, start a project on GitHub, or contribute to other open source projects. If you're working for me, I want to know that this is the 3rd or 4th time you've solved this exact same problem, and you already know what the code looks like in its entirety before you even fire up your editor.

So, do you need 10 programmers? Absolutely, because there's lots of 7-9 work to get done.

That said, I _encourage_ engineers to do open source work. They need to increase their skill level, and they can even do it on my dime, but they shouldn't be doing it by experimenting with the projects I assign them.

It pisses me off when an engineer talks about some super great idea they have for solving some problem. You know what? If it was really a super idea, then I should be hearing about in the past tense, and you should be showing me the hundreds or thousands of lines of code you've already written and perfected. Sell me a polished product, not an idea.

Re:Takes a 10 to solve a 7 (0)

Anonymous Coward | about 7 months ago | (#44824035)

Oh, you're the kind of guy that wants his sausages to taste great but doesn't want to provide any competent assistance or even encouragement in making them. Why don't you just go back to your lifestyle of drowning in booze and hookers and get out of the way of people doing real work.

they want people who can do the work of 3-5 people (1)

Joe_Dragon (2206452) | about 7 months ago | (#44823919)

they want people who can do the work of 3-5 people as in areas that may need 3-5 different people covering each area. They want 1 person to do that work OT with no added pay and be a super star in all areas.

What defines a rock star? (0)

Anonymous Coward | about 7 months ago | (#44823937)

What qualifies a developer as a "rock star"?
I work in a particularly tough field, prefer to be called an engineer due to the research and modelling I do in order to build a solution. I am continuously praised by management and respected by my peers and receive a more than fair chunk of coin for my dedication and the quality of my timely work. I'm very confident, in personal and work sense and perhaps time to time can be a bit arrogant.

However for all of that, I'm not a diva, I don't deal in petty bullshit office politics or ask for more money than I know the market will pay for the same level of work. And when I'm not doing a 13 hour day, I'm likely at the pub with the guys from work getting smashed and trying to find some chick who wants to make me breakfast.

If I'm a rock star, then so are the rest of the team at work because they are all just as talented and live similar work hard play hard lifestyles.

They are a distraction (0)

Anonymous Coward | about 7 months ago | (#44823951)

They use drugs, trash their instruments, wreck hotel rooms. They have even been known to spontaneously combust.

college degree is useless for some IT jobs (1)

Joe_Dragon (2206452) | about 7 months ago | (#44823953)

Each school is different but some a overloaded with theroy also CS is not really the desktop / sever / networking side of stuff.

Also 4 years pure classroom is to long / to big of a block.

do not underestimate your needs (1)

LodCrappo (705968) | about 7 months ago | (#44823985)

I think pretty much any opinion on the primary question already been offered. However I would add that whether or not you feel that your needs are challenging and/or require great programmers, a great programmer may very well be worth every penny they cost you and more.
Take a look at the daily wtf or other similar sites to see the huge cost a mediocre programmer can be to a company even in very simple applications. Even a minor change to a system can be done well or done poorly, and too many items done poorly can be a catastrophe.

You might not be doing mission critical projects, but when generating a TPS report coversheet brings your network to its knees because some mediocre programmer doesn't know or care what she's doing, it sucks and it costs money.

Education not Important - B*S* (0)

Anonymous Coward | about 7 months ago | (#44823987)

I'm sick of posts on this web site, and others, where writers whine that no one appreciates them because they don't have a degree. Better educated people know more than less educated people, and this affects their work in subtle ways.

From a tech company CTO (0)

Anonymous Coward | about 7 months ago | (#44823993)

I'm a CTO at a small (80 employee) software company. In my day I have been referred to as a "rock star". I didn't like that idea too much because usually it implies "prima donna". That said, the thing about a rock star dev is that they can be insanely productive. Where this matters most is with problems that might normally take a team of, say, 3 people. If one person can keep the whole problem straight in his or her head, then you can gain a lot of efficiency by not needing to coordinate between multiple people.

I like to keep a couple of guys like that around. Someone who you can throw a problem to and give them the extra freedom to solve on their own. But there are clear expectations regarding how they share information, how they collaborate, and how they take direction (for instance they have to still get their architecture reviewed). Not all guys who are "rock star" level can handle that; some want complete autonomy, and have some serious issues working well with others, especially those they consider beneath them professionally. That's fine, but it doesn't work on my team. I'll sacrifice some of that desired productivity for someone who works well within a team with players from A to C level. Call them a "rock star lite", someone who performs as a solid pro day in, day out, but when called upon, steps it up to all-star level.

Coder skill ratings... (1)

CODiNE (27417) | about 7 months ago | (#44824023)

I work by myself on small projects assigned by the company which I am wholy responsible for. I have complete freedom of language, frameworks, data formats, etc... I get a job, give a time estimate and do it.

It's cool having that amount of freedom but the lack of peers hurts my growth, I'm sure many times I've reinvented the wheel. Then after some thought I reinvent it again in a better way.

How does one to about rating someone's programming abilities on a 1 to 10 scale in a somewhat objective way? Peer groups will affect our perception of what is easy and what is difficult. Are we judging based on speed? Use of patterns and anti-patterns? Code reuse?

If I change jobs and work with a team my perspective widens but how do I know how my local team compares to others?

Load More Comments
Slashdot Account

Need an Account?

Forgot your password?

Don't worry, we never post anything without your permission.

Submission Text Formatting Tips

We support a small subset of HTML, namely these tags:

  • b
  • i
  • p
  • br
  • a
  • ol
  • ul
  • li
  • dl
  • dt
  • dd
  • em
  • strong
  • tt
  • blockquote
  • div
  • quote
  • ecode

"ecode" can be used for code snippets, for example:

<ecode>    while(1) { do_something(); } </ecode>
Sign up for Slashdot Newsletters
Create a Slashdot Account