Slashdot Mirror


The Truth About Hiring "Rock Star" Developers

snydeq writes "You want the best and the brightest money can buy. Or do you? Andrew Oliver offers six hard truths about 'rock-star' developers, arguing in favor of mixed skill levels with a focus on getting the job done: 'A big, important project has launched — and abruptly crashed to the ground. The horrible spaghetti code is beyond debugging. There are no unit tests, and every change requires a meeting with, like, 40 people. Oh, if only we'd had a team of 10 "rock star" developers working on this project instead! It would have been done in half the time with twice the features and five-nines availability. On the other hand, maybe not. A team of senior developers will often produce a complex design and no code, thanks to the reasons listed below.'"

58 of 487 comments (clear)

  1. Summarized by war4peace · · Score: 3, Insightful

    The whole article could be summarized like this: "We have no fucking clue how to manage rockstar developers".
    If management or MBAs don't click with devs, the project is ripe for crashing.

    --
    ...gis sdrawkcab (usually not responding to ACs; don't bother posting as AC)
    1. Re:Summarized by jellomizer · · Score: 5, Insightful

      No it is more of a case that most companies don't need a team of rockstar developers.

      Because in truth you don't. For an average medium large project
      1 Rockstar Developer
      3 Mid Level Developers
      6 Jr. Developers

      The Rockstar works on the proof of concepts, and the base architectural design.
      Mid Level make the core building blocks
      Jr. Developers put all the pieces together.

      --
      If something is so important that you feel the need to post it on the internet... It probably isn't that important.
    2. Re:Summarized by darronb · · Score: 4, Insightful

      I strongly disagree in the concept that rockstars only design and don't code. Sure, lots of senior people I meet seem to think they've earned the right to just think all day on problems and let more junior people slog through actually coding anything. Many times you end up with (as Joel put it wonderfully) architecture astronauts that do much more harm than good. Many of the ones that avoid that particular trap just cost you a lot of money to work at a way lower productivity level than what they're capable of producing.

      Coders need to constantly code, or they start to drift off the reservation. They develop odd ideas of what software development should be (which can end up quite burdensome since they don't have to do a lot of it themselves), and chase down crazy edge cases as thought experiments.

      While the junior people need to learn somewhere, I'd much rather just work with just 'senior' level people personally. (That's generally a watered down ranking anyway, and certainly not rockstar level) Sorry, you guys deal with the rest. :) Any competent senior-ish level person can code faster than they can explain what to do to/clean up after junior developers. Even assuming a really well architected system broken up into easy blocks for the junior people to code (which doesn't happen in practice quite as often as/well as it should) just means that the easy blocks could be done in minutes by the more senior people.

      At the moment, at my largest client they've got one near-rockstar guy and myself. We get things done about 10 times faster than -competent- teams I've work with in the past. When the platform evolves to a point where it needs some refactoring, there's no whining and it gets done FAST. (it's R&D, the requirements change rapidly) It's awesome. I wish I could hire the guy.

      One of the weakest points of having more junior developers is handling signficant design shifts. On past teams we ended up avoiding or delaying making changes we needed to make because we were afraid of dealinng with the confusion from the juniors. The code ended up accumulating cruft to a much greater extent as a consequence.

    3. Re:Summarized by Anonymous Coward · · Score: 5, Insightful

      This "rockstar" term is so fucking stupid and abused. If you have millions of end-users who know your name and what you did, THEN you can call yourself a rockstar programmer. It's mostly a public image thing too, rather than quality or quantity of code. Programmed some lame server-side java app in half the time it takes most people? Not rockstar.

      The only rockstar programmers I can think of off the top of my head are John Carmack, Tim Sweeny, Brian Fargo, Warren Spector, Sid Meier, Peter Molyneux, John Romero (classic rock I suppose), and Cliff Bleszinski. All of these guys are games industry programmers that are high profile. When's the last time you saw publicity on generic corporate coder #81635?

    4. Re:Summarized by tnk1 · · Score: 3, Insightful

      I agree that you will 9 times out of 10 get a veteran, as opposed to a performer, but rock stars are always going to be looking for new jobs, because that's how you actually get raises these days. Not to mention that staying in the same job will eventually bore them after a few years.

      The thing is, they will be snapped up quickly, and usually can find these new jobs via back channels. Don't expect to find these guys by looking for people to respond to your ad for jobs. People like that are headhunted and often move jobs when they feel like it. Unless your search starts headhunting people or unless you network sufficiently, you won't find them.

    5. Re:Summarized by hackula · · Score: 3, Interesting

      Sometimes having specialized people who do not code a whole lot is necessary. I work with a lot of Phd folks who can crank out some really powerful algorithms, but their code leaves... something to be desired. I do work in a pretty edge case kind of field though (geospatial analytics), that has a good bit more math than your average business dev work. Those devs do go off the reservation, but that is pretty much the nature of the work, and its better them than me. I am more than happy to interpret their algos and architect them into a maintainable solution. We also have worker bees who write reports and do basic data processing code. I live happily in between (my title is software architect (which I realize everyone thinks is bullshit, but I think it fits pretty well)), writing the most code, designing the "big picture" of the applications, and piecing everyone's work into one unified product. TLDR: Every type has a place, even the people who cannot grok the complex design patterns AND the people who are too smart for their own good and can be focused in on particular difficult-to-design modules.

    6. Re:Summarized by quintus_horatius · · Score: 3, Insightful

      After reading your post, I realized that slashdot needs a 'bitter' mod point.

  2. Re:Don't hire union workers by AliasMarlowe · · Score: 5, Funny

    Rock Star Developers, seriously? None of them are that good.

    Agreed. Rock Stars suck as developers. And most of them suck at rock, as well.

    --
    Those who can make you believe absurdities can make you commit atrocities. - Voltaire
  3. Troll Article? by Narcocide · · Score: 4, Insightful

    Article is weak on expertise.

    1) No, you don't need 10, idiot, you just need ONE, and about a dozen or so relatively obedeient and competent non-novice developers.

    2) Those weren't senior developers.

    1. Re:Troll Article? by donscarletti · · Score: 4, Insightful

      Best to have a couple of elite guys to motivate each other, a bit of camaraderie and some healthy competition. A single fulcrum may get stressed, lonely or complacent. I like having someone that I must work hard to prove I am better than.

      --
      When Argumentum ad Hominem falls short, try Argumentum ad Matrem
    2. Re:Troll Article? by Xest · · Score: 5, Insightful

      Exactly.

      If your "rock star" developers are over-engineering the problem, writing bad code or whatever, then they weren't "rock star" developers, but a bunch of ill experienced or underqualified amateurs that's kind of the fucking point.

      The article will be better labelled as "If your rock star developers aren't, then they'll produce just as shit a product as developers who don't even pretend to be capable of doing the given task".

    3. Re:Troll Article? by YttriumOxide · · Score: 5, Insightful

      Bullshit. The definition of a "Rock Star" developer is that they have a history of producing hits. It's not relative.

      I have a history of producing software that gets the job done; sells pretty well; people like using; is very stable without too many bugs; and so forth.

      I however would definitely NOT consider myself a "Rock Star" developer by any stretch of the imagination. I'm self taught and have glaring holes in my knowledge in quite a few areas. I often look at code from others and go "ah, that's a better way than I would've used" (and then try to use similar things in my own code in the future). For example, after a good 5 years of coding all day every day as my day job, I finally figured out the "right" time to use interfaces vs other methods. My code before that should've used interfaces worked (and worked well) but would be much more maintainable had I really known about their correct usage before. And vice-versa, I came across some REALLY old code of mine that uses interfaces when it makes absolutely no sense to do so (I assume it was when I first heard what about they are)

      What makes me not a CRAP developer is that I know I have these holes in my knowledge and am willing to learn from others. That hardly makes a rock-star though, regardless of how much good stuff I've produced to date.

      --
      My book about LSD and Self-Discovery
      Also on facebook as: DroppingAcidDaleBewan
  4. Re:Don't hire union workers by Anonymous Coward · · Score: 5, Informative

    I'm not sure about how unions work in America, but in Germany the purpose of an organised workplace is to have a forum between workers and management. The union wants the company to be productive because that secures jobs and usually results in higher wages. The management want the workers to be happy because then staff turnover is reduced, productivity increased and honesty maintained.

    The UK and the USA are falling further behind as they put short-term executive profit over the needs of all classes of people.

  5. It's an art by TheCouchPotatoFamine · · Score: 3, Informative

    it's the lack of a single, piercing intellect who is given the power to do their best. You need SINGLE intelligence to coordinate complex maneuvers, and many minds to search out the plain of solutions like hunters of old. Coding is actually quite holistic, occurring in natural stages. Maybe the problem isn't that there too many or too few people; a good software team should be inspirational, allowing the members to spend time for excellence, even if its not obvious (to you, the hiring boss).

    No surprise efficiency is an issue in some places; if one builds a "well oiled" machines for it's consistency of action, trouble us not about these tiny changes (in all honesty) that leave managers hoping humans can be better machines. The art you are looking for, and the people, aren't found where that idea lives.

    --
    CS majors know the time/space tradeoff, but they never get taught the 3rd, crucial, tradeoff of the set: comprehension!
  6. Unmanageable by Rosco+P.+Coltrane · · Score: 4, Insightful

    "Rock stars" - we called them divas in my company - are notoriously unmanageable: many of them are temperamental, don't work well with others, tend to do what they "know" is right instead of doing what they're told, and have an overinflated sense of ego. It's a high price to pay to exploit their expertise.

    At any rate, one diva per project, provided a good supervisor is found to manage them and the project is in early development, is okay and probably does bring added value. A team of them however is sure to bring chaos, as individual personalities will inevitably clash. And forget about getting these guys to work on products that are in the middle of their product lives.

    --
    "A door is what a dog is perpetually on the wrong side of" - Ogden Nash
    1. Re:Unmanageable by TheCouchPotatoFamine · · Score: 3

      truly, it's as if we should choose people to work together who actually have a lttlle in common. In many contracts i held, we didn't even read each others resumes. How can you build a bridge of understanding with a person who "just wants to work" and defines that as having no spark or interest greater than what's for lunch? (or, what's for project - same thing) Talking, and sharing mistakes freely - coming to know each other so as to render help and criticism without fear of reprisal IS work. That's what "professional engagement" means - one are engaged! I consider myself an eccentric coder (oh i do so qualify), but my major gripe wasn''t some big lack of skill - it was lack of professionalism. If people expect treating each other like strangers on the subway will make a better workplace, and if the company only promotes lax, lazy, quiet, and completely unstimulating environment - well, i can understand the divas better then the people that fail to *care*.

      --
      CS majors know the time/space tradeoff, but they never get taught the 3rd, crucial, tradeoff of the set: comprehension!
    2. Re:Unmanageable by epyT-R · · Score: 3, Insightful

      "Rock stars" - we called them divas in my company - are notoriously unmanageable: many of them are temperamental, don't work well with others, tend to do what they "know" is right instead of doing what they're told, and have an overinflated sense of ego. It's a high price to pay to exploit their expertise.

      except of course when they do when they're told, and shit hits the fan because they were correct to begin with, and then they're blamed for the failure and canned. Who's the diva then? Your phrase 'doesn't work well with others' tells me all I need to know about the culture where you work. Process and consensus matter more than facts and the truth of a matter. This is a very poor environment for logical thinking of any kind, nevermind computer programming.

    3. Re:Unmanageable by ccguy · · Score: 4, Funny

      "Rock stars" - we called them divas in my company - are notoriously unmanageable: many of them are temperamental, don't work well with others, tend to do what they "know" is right instead of doing what they're told,

      No disrespect, but we developers also have a name for people that describe developers the way you do :-)

    4. Re:Unmanageable by Xest · · Score: 5, Insightful

      I think you've probably just been fleeced.

      ""Rock stars" - we called them divas in my company - are notoriously unmanageable: many of them are temperamental, don't work well with others"

      To me this means they weren't rock star developers. Being a great developers means being excellent not just at writing fancy algorithms, but being able to architect great code, being able to communicate with the project stakeholders to find out what they really want, being able to organise and train other coders to improve their level of competence. If your "rock star" developers were problematic, then I'd argue what you actually had were a bunch of people who managed to sell themselves as being more competent than they were - they told you they were "rock star" developers and you believed them, but in reality they weren't.

      "tend to do what they "know" is right instead of doing what they're told"

      I take issue with this. Surely the whole point in hiring the best of the best is that they know from experience what the fuck they are doing. If you don't listen to them then you are hence the problem, why hire them if you're just not going to listen to them and do things your way anyway? If you know better then you don't need them in the first place. If you do need them, then fucking listen to them.

      Really, it's not difficult. The ones who really do deserve the "rock star" developer title are the ones whom you'd never have any of the problems you listed with (bar the one in the last paragraph which I believe is a flaw with your management rather than them). If you're having those problems then you've hired a salesman. A salesman who is a pro at selling himself at an overinflated price, but not really the person you were actually looking for.

      Having an ego runs completely counter to being a great developer or engineer, because if you have an ego you're not capable of introspection, you're not capable of noticing your flaws, your weak areas, and improving them. If your devs have an ego then they're never going to be as good as the ones who quietly and happily just self improve. Take John Romero and John Carmack, one of these has a massive fucking ego, an ego so big it can fill a football stadium, the other has a long history of writing pretty impressive cutting edge code without ever displaying an ounce of ego. The latter has had an impressive career developing cutting edge tech, the former, when he went it alone became probably the biggest flop in the industry and his studio was only saved by a bunch of other previously nameless devs who worked on a separate project away from him.

      Egos are a trait of wannabes, real superstars just get the fuck on and do what they do.

    5. Re:Unmanageable by Chrisq · · Score: 5, Funny

      "Rock stars" - we called them divas in my company - are notoriously unmanageable: many of them are temperamental, don't work well with others, tend to do what they "know" is right instead of doing what they're told,

      No disrespect, but we developers also have a name for people that describe developers the way you do :-)

      Let me guess: "Sir".

    6. Re:Unmanageable by locofungus · · Score: 4, Insightful

      A diva, OTH, is always right, in his mind that is, he is abrasive and nearly impossible to manage effectively.

      While this is probably true for some people, especially above average people who have only worked at small companies where they are the best developer with no real competition I think there's a second problem that can make good people appear like that:

      Sometimes we are asked to do something that is impossible. Not hard, not boring, not beyond our capabilities, but impossible.

      Mediocre developers will go off to start things when they are asked. Months later they'll hit the corner cases that make the project impossible to do and then will be completely flummoxed at which point one of the top developers will be called in to try to rescue the project.

      Where the top developers can be particularly weak is in trying to explain why a project "just won't work." It's surprisingly difficult to do in any moderately complex system. Often any single example that won't work has a simple solution. It's only when you consider many of the difficult cases together that you understand that the solutions are mutually inconsistent.

      One of the key things of the top people isn't just that they're good but that they don't (often) start along roads that won't work. Get two or three of them together, give them time to thrash out ideas (and them leaving work early on Friday to go for a pint might actually save your company hundreds of thousands in developer time when they realize there's a problem ahead) and you really can see a ten fold performance improvement in productivity. Not because more code is written but less is written and then thrown away.

      Maybe we're saying the same thing. But I have seen few true divas while you imply they're common. Many able programmers are not perhaps as socially functional as managers might prefer but that is, unfortunately, going to be a consequence of hiring people who are doing a job that needs excessive amounts of pedantry to get right.

      Tim.

      --
      God said, "div D = rho, div B = 0, curl E = -@B/@t, curl H = J + @D/@t," and there was light.
    7. Re:Unmanageable by bzipitidoo · · Score: 3, Interesting

      he's a whiny sod who no-one likes.

      That's a typical subjective evaluation too easily made and abused for nefarious purposes. You forget the power of office politics. He could be a well-mannered, polite person who was given the brush off and shoved into a closet, for political reasons. The other people on the "team" were afraid they'd look bad, and this would imperil their jobs. So they maligned and sidelined him, behind his back of course. Said he wasn't a team player, and a whiner, and all sorts of other difficult to assess bad qualities. Blamed him for every problem regardless of actual fault. By such means, the cabal can cover up their own mistakes and push a dangerous rival closer to termination at the same time. They may even resort to sabotage, "accidentally" deleting his work, for instance, then enjoying it when management roasts him for lack of productivity. Very Sienfeldesque. Who is management going to believe when it's one person's word against 5?

      Think cabals like that are uncommon? When people are feeling their own necks, feel they can't afford to be nice or fair, situations can quickly turn ugly. It can get rough when one team member greatly outshines the rest.

      Meanwhile, the rock star programmer will soon figure out what is going on. What is he to do? The rest of the team has turned against him, and is determined to make his every effort end in failure. He didn't do anything to deserve that, his "crime" was merely being too smart. He could try to rise above the pettiness, ignoring the politics and concentrating on the job. That might work, but much depends on how able the others are at sabotaging him. He could try to befriend them, help them with problems and the like, but that may simply not work. When someone has to be voted off the island, all he is really doing is persuading the others to cut someone else's throat instead of his. Each may still think that their best chance is to get rid of the most dangerous competitors first, while they still have numbers on their side, and the rock star can't dodge that assessment. Once he's gone, the rest have better chances against one another than they would have against him. He's a dead man walking in an environment like that. He could therefore play dumb, but it's difficult to maintain the facade for any length of time. If he complains to management, he merely confirms that he is a whiner. If he quits, he gets painted as yet another flighty, difficult prima donna, further confirming the general view of rock star programmers. This view is very convenient for the incompetent masses, and they are quite good at suckering management into that kind of thinking, that too good is bad, and too smart is dumb. And so it is perpetuated, in crummy articles like this one. He could try to demonstrate to management that the rest of the team is incompetent, show them for the conniving, treacherous scum they are. But this is likely a waste of time. It's rare that management is at that borderline level of competence where they didn't already know it, but once there is evidence, they will be convinced, and will take appropriate action. If they are newly arrived, then there's a chance. But if they've been there awhile, forget it. More likely, they already know the team plays dirty, and can't do anything about it thanks to nepotism. They may not care. Or, they don't know, in which case they can't be very good managers, not to know the temperament of their subordinates. If they aren't any good at that, they won't be much good at seeing through the bull, and are more likely to fire him than the real troublemakers. The management may even side with the incompetents, seeing them as kindred spirits.

      --
      Intellectual Property is a monopolistic, selfish, and defective concept. It is "tyranny over the mind of man"
  7. "rockstar developer" by Hazel+Bergeron · · Score: 4, Insightful

    No-one who identifies himself as a rockstar developer is a rockstar developer, and no good developer would call himself a rockstar. The only thing certain is that in any article about "rockstar developers", a few dozen people will wander in and complain that the only reason the world isn't perfect is because rockstars like them just aren't looked after well enough.

    So, for all of you thinking about making this claim: if you're so fucking great, go out and start your own business and rewrite every single software product in your own image. Be the rockstar you think you are, identify everyone's desires, and out-compete every other firm on the planet. Internet capitalism is more meritocratic than most forms of capitalism - if you write a killer operating system or office suite or CRM system or time&billing app or whatever, people will take notice. So team up with as many people as your ego will allow (you're a rockstar so you already have considerable savings) and go get 'em, tiger!

    1. Re:"rockstar developer" by jcr · · Score: 5, Insightful

      No-one who identifies himself as a rockstar developer is a rockstar developer, and no good developer would call himself a rockstar.

      I agree 100%. I've had the good fortune to work with some extremely talented developers in my career, and the best of them tend to be very humble about their skills (mostly because they tend to seek out the company of other engineers who are as good as they are.) "Rockstar" is a bullshit term used by dotcom promoters and headhunters.

      -jcr

      --
      The only title of honor that a tyrant can grant is "Enemy of the State."
  8. Re:Don't hire union workers by Anonymous Coward · · Score: 4, Funny

    in Germany the purpose of an organised workplace is to have a forum between workers and management. The union wants the company to be productive because that secures jobs and usually results in higher wages.

    Sounds like Germany still has labor unions. In the USA, we have organized crime posing as labor union organizers, and their purpose is to tax the workers to pay for hookers and blow for mobsters and politicians.

  9. Senior Developers != Rockstar Developers by HizookRobotics · · Score: 4, Insightful

    Description starts by talking about rockstar developers, then makes assertions about senior developers. These two groups are not even close to equivalent. Seniority (generally) implies experience -- not "rockstar" status.

  10. Re:Don't hire union workers by Forty+Two+Tenfold · · Score: 4, Funny

    I think it's hard to claim the USA and UK are falling back when pitted against Germany for that reason.

    USA and UK are falling back to slave labor.

    echo -e "HEAD / HTTP/1.1\nHost: slashdot.org\n\n" | nc slashdot.org 80

    curl -I http://slashdot.org/

    --
    Upward mobility is a slippery slope - the higher you climb the more you show your ass.
  11. Troll Indeed by Anonymous Coward · · Score: 3, Interesting

    ...No, you don't need 10, idiot,....

    That's the attitude and one of the things that made my time as a developer miserable. It wasn't enough that I was under constant pressure to meet unrealistic dealines and spending all my free time keeping up with new tech, I had to put up with that kind of abuse and the constant intellect pissing contests and penis measuring.

    The other was the fact that you couldn't say "I don't know. Let me research it." Any sign of ignorance or weakness would get you fired or the very least treated like a moron by one's colleagues.

    Last year, I saw the National Geogrphic show on Stress. To make a long story short, the guy who was researching monkeys made some observations about them that reminded me of working in software development.

    1. Re:Troll Indeed by pairo · · Score: 4, Insightful

      Sounds like your employer/colleagues were pieces of shit. Doesn't necessarily mean that's the norm, or that you can't find better. But, keep on fighting the good fight, sir!

    2. Re:Troll Indeed by Anonymous Coward · · Score: 4, Funny

      You need to work in IT in the porn industry. Everyone gets tired of the penis measuring very quickly.

  12. Desperate justification for hiring cheap people? by gweihir · · Score: 5, Interesting

    This sounds like a desperate justification for doing it on the cheap. And the "truths" are badly flawed. First, the term "rockstar" is already pretty bad and way off. A very senior engineer is not a "rockstar". Rockstars are people that crave attention and can generate it.

    As to the items:
    1. Wrong. If you hire highly competent and professional people, the savings in time, maintenance, etc. will be far higher then the higher salary you have to pay them.
    2. Wrong. People in the described situation have trouble seeing the big picture, and will get details wrong as well. Their code will basically barely good enough if you are lucky, but it will be a nightmare of maintenance, architecture and design issues.
    3. Wrong. This is confusing "rockstars" with very senior engineers. Very senior (by experience and capability, not age) engineers will know this pitfall (hint: Brooks calls it the "second system effect", a really senior coder will know about that) and will know how to avoid it.
    4. Well, yes. But what is the point? If the hiring process is run incompetently, of course you will get bad people. That is in no way the fault of the good people that are out there as well. Seems to me the author needed an excuse to bring it up to 6.
    5. Wrong. This is a typical problem of people that may think they are senior when in fact they are not. Also see 3 and 4.
    6. And here the truth is revealed. This person does not want senior individuals that actually know what they are doing and may criticize as stupid plan. In fact this person wants no individuals on the team, so everybody can be replaced easily and knows it. Yes-men preferred. Unfortunately that is a sure recipe for disaster.

    Bottom line: All there "truths" are wrong or irrelevant and show the real problem: The author of this article has no clue and is a "rockstar" himself. But not one of those that can actually do things right. Just one of those small people that cannot handle others being better at something than he is.
     

    --
    Most ACs are not even worth the keystrokes to insult them. Be generically insulted by this and ignored otherwise.
  13. Re:Don't hire union workers by Sique · · Score: 3, Informative

    I don't. http://www.tradingeconomics.com/germany/gdp-growth

    Looks as if Germany's GDP is managing just fine.

    --
    .sig: Sique *sigh*
  14. I've been in this game a looong time... by CaptainOfSpray · · Score: 5, Interesting

    and every really hotshot piece of software I have ever encountered (and I'm talking world-wide success here) has been written by a very small team of highly-motivated developers working very long hours at very odd times of day with no management interference at all. They weren't rock stars before the project or they would have been managed into oblivion. After they had completed the product and it became successful, then they were rock stars. The self-motivation usually came from "fuck you, manager, I'm going to prove that my ideas are correct" One of these projects, where I knew the people well, became one of IBM's top 5 most profitable products world-wide (you've never heard of it), and those guys broke every rule in the book. They worked nights, never went to meetings, smoked cigars at their desks, suppressed all records of how many hours they were really working. By working those hours, the two of them held the entire structure of a big application, its database, and all its interactions with the operating system in their heads, and that mental state enabled them to write vast quantities of simple clear code that contained no serious errors on shipment, and none revealed in the first year. Later people added on to the project for subsequent releases never found any serious errors in the backbone written by the first two guys, nor did they have any problems adding to the code.

    Code written during the normal working day, with constant interruptions, will never soar like that.

    --
    "Cock Up Your Beaver" does not mean what you think. This sig is intended to clog filters and annoy do-gooders
    1. Re:I've been in this game a looong time... by pnot · · Score: 3, Insightful

      Code written during the normal working day, with constant interruptions, will never soar like that.

      About half an hour before reading your post, I suddenly realized that Monday is Labor Day. My first thought was "fuck yeah, no office-mate, no visitors, finally I'll get some real work done".

  15. The article is frankly stupid. by gnasher719 · · Score: 5, Interesting

    If you have 40 people writing spaghetti code, then you need _one_ good developer and code reviews, and reject bad code until they learn. Many bad developers are bad because they haven't learned how to do it better. Those that can't learn - sorry, but their productivity is negative, so let them go. What you don't need is a dozen "rock stars". You need developers who can lead by example and let them do it, and who can solve difficult problems that turn up, and you need more people who are reliable, not necessarily bright, who can do all the boring bits - of which there are usually lots.

    What I can't understand is how the author talks about smart people making smart designs that don't work. If the design doesn't work, it wasn't smart in the first place. If someone creates a design that isn't smart in the first place, that person wasn't smart. So this seems to be about people who can bamboozle others into thinking they are smart, creating designs that nobody understands.

  16. Re:Don't hire union workers by blahplusplus · · Score: 3, Insightful

    "Your arguments would probably be more listened to if you didn't use Marxist terminology"

    It's not "marxist terminology" capitalism is enforced and came into being by men with guns, only in america would someone say something so ignorant of history. More proof america is under the spell of mass political propaganda.

  17. Re:Don't hire union workers by Mr0bvious · · Score: 4, Insightful

    Surely the recent past has shown you what 'ratings' are worth.... These are the same people who stamped all those dubious mortgage backed securities as AAA, remember how that turned out..

    These ratings are simply an opinion that is correct until it isn't - it's worth bat shit.

    --
    Never happened. True story.
  18. Re:Don't hire union workers by Coisiche · · Score: 4, Insightful

    Actually, thanks to workfare it seems that people do end up doing work for less than minimum wage. There is an, admittedly anecdotal, story that a woman was dismissed from a paying job and then ended up at the same place doing the same job under workfare. Not exactly the definition of slave labour but makes a mockery of minimum wage laws.

  19. Re:Don't hire union workers by Ash+Vince · · Score: 4, Informative

    Well, in America "unions" mean very powerful quasai-political entities like SEIU or UAW which basically make american labor unprofitable (see the insane costs of auto-workers). These "unions" extort huge fees from their often-unwilling constituents and in turn donate large sums to our Democratic/socialist party.

    Source: my uncle worked in Detroit from high school-> retirement. He loves American cars but told me it's one of the most corrupt systems out there.

    Not all countries unions work the same way. I know that here in the UK unions are very different from unions in the US and also different to unions in Germany.

    The fact that the union system in the US was infiltrated in organised crime does not mean that happened anywhere else. I think it might be one of the only developed western countries where this happened actually, it is certainly not the case in the UK.

    --
    I dont read /. to RTFA, I read /. to offend people in ignorance.
  20. Re:Don't hire union workers by jellomizer · · Score: 5, Informative

    Unions in the United States needs massive reform. However no one is really wanting to admit it. When ever someone says to the Union "Dude, you have some major problems, you need to fix them!" they go back and spout all the good stuff they did in the past. Weekends, Overtime, Vacation....

    The problem now the Unions main goal is to increase the size of the Union. So I have seen Unions agree to something similar to the following example
    Lay Off 50% of the IT Staff (say 10 People at an average of $70k a year), and Expand Factory workers by 20 average $30k a year. To save $100k, for the company. But the Union ends up getting more money out of dues.

    Also because the Unions are structured there is a deep dislike towards Outside Consultants and Contractors for temporary work. (For example the Auto Union hired workers to do nothing until there is a surge in work, so they sat around all day and watched TV except for a few time a month or year) Because they would get more unioned members vs. hiring contractors to pick up the extra slack when it is needed, but they are not paying union dues so they are not welcomed.

    Union shops tend tries to make sure no one does anyone elses job. You request and get approved for a whiteboard. The board is shipped to you. If you hang it yourself your are in trouble, you will need to wait an other week to get a Unioned employee to take 5 minutes to hang it for you.
      I once got in trouble from the union because I was consultant commissioned to create a Web Application for them. The commission came from the Application Development group, I did the work to the best of my abilities... Apparently it pissed off the Web Group because my application looked better then what they could do, and they demanded more tools so they can make their apps look better then mine...

    There is also a fear amongst union members to bad mouth the union. When I was taking my MBA class, and the Unioned Professor trying to teach how to deal with collective bargaining, she would close the door and talk quietly. When I use to work as a consultant, I was told to avoid these people because they are big in the union, and if I did anything to make them look bad there will be a lot of trouble.

    --
    If something is so important that you feel the need to post it on the internet... It probably isn't that important.
  21. They're rockstars because they get the job done by Anonymous Coward · · Score: 5, Interesting

    Except they/we are rockstars because they get the job done, despite a bunch of MBA's trying to stop them. I agree with him about too many senior developers, they cancel each other out. I've use teams of 3-4 people, usually one rockstar and 3 who are happy to play second fiddle and follow his lead.

    When I've done the rockstar roll (before I moved into managing them). The number of times I've had ineffective programmers try to trip me up. A typical pattern is the 'spec says X', I'm well into the spec, X is already written, a programmer on some other platform is falling behind and hasn't gotten to X yet. What do they do? Typically they will start changing the spec, now X is Y and I have to go back and re-implement X as Y.

    Do this often enough and I have to WAIT for the slow coach to decide what he's going to implement from the original spec. before I can clone it on my platform.

    Then there's the IBM type guys (I think EDS are the same, but I haven't personally had experience of them yet). I couldn't get them to code at all in any way. I'd receive a mountain of design documents for the most trivial of things, and a million excuses why it would take 10 years and more resources than we had. If I simply went ahead and coded their part, they'd send in the 'Rock Star Business Analysts' to claim it's spaghetti code and the distraction of it was the reason they couldn't code their part.

    I've seen IBM do a hatchet job on a Danish software producer, so much that the Danish company refused to continue with the project. Yet I never saw an IBM guy deliver a single line of code that tackled a single problem. All they every did was produce meetings explaining what is wrong with the code (which was nothing but a few bugs they were hired to fix but didn't).

    That's the other problem superstar programmers face, superstar bullshitters whose real agenda is to delay a project.

    I often think there are superstars in every company, and the difference between a Google and a Microsoft is that one company can tell the superstar developer from the superstar bullshitter, the other can't.

  22. Re:Don't hire union workers by PerMolestiasEruditio · · Score: 3, Informative

    Definitely a lot of organised crime in relatively strong Australian unions.

    In the days of strong militant unions in New Zealand OC in unions was a big factor (surprising considering that New Zealand is nearly the least corrupt place on the planet), but unions were thankfully mostly broken in 80's, (with partial exception of waterfront), at the point where they had come close to destroying the economy with uncompetitive labour practices and the Labour govt of the time was left with no choice but massive reform.

  23. Re:Don't hire union workers by Anonymous Coward · · Score: 4, Insightful

    And you really think that anybody here in Germany gives a fu*k about what an american credit rating company says about this country? What kind of reputation do you think they have here? Germany has NEGATIVE interest rates on short-term bonds, and lower interest rates that anyone else (US included) on 10 year bonds.

    A low-level german factory worker with middle school education makes 50K a year, cannot be fired if not for just cause, can vote for 50% of the seats in the Council of Surveillance (what you call "board of directors" in america) so the company is substantially co-managed by workers themselves and shareholders have limited power compared to the US (yes, it's a semi-socialist system, and it works great!). And he/she gets complete and high quality healthcare coverage from the government, a generous pension benefit when he/she retires (67% of the last salary, and completely tax free), all paid for by a highly progressive tax system. Of course also education is free, college included.

    Instead, if you're american, you live in a country where the richest 10% of the population has 70% of the wealth, and the remaining 90% are beggars brainwashed by trashy hollywood movies since birth. That's the "american dream", right? Just keep it.

  24. Re:Don't hire union workers by DuckDodgers · · Score: 4, Insightful

    That's okay, the banking executives in the United States caused the biggest recession in 80 years without a single criminal prosecution or even getting fired. When the people on top of the economy get their house in order, I'll start listening to their advice for curbing the excess of the working class.

  25. Re:Don't hire union workers by BVis · · Score: 4, Insightful

    Get out of here with your 'logic' and 'sensible suggestions'! USA! USA! USA!

    Seriously, though, I totally agree. I agree that welfare should not be a handout with no strings, but at the same time the helping hand should be there to help them change their lives to the point where they no longer need government assistance. Sometimes there are mental health issues that need to be addressed, or untreated medical conditions that aren't being adequately covered by our Medicaid/Medicare programs. Sometimes there needs to be skills training to make them more employable. The private sector can help as well; instead of exploiting the fact that the job market sucks by hiring these people into no-benefit, minimum wage jobs that nobody would take under normal circumstances, they could hire people into positions that have potential for raises and promotion based on hard work. I guarantee you that 99% of the jobs listed at your local unemployment office are dead-end garbage that only reward hard work with more hard work, and pay so little that frequently a person would be better off without the job at all. (At least then they might be eligible for Medicaid and have SOME health coverage.)

    Your child care suggestion? You'd get laughed out of the room if you proposed that. The attitude is that they had the kids, it's their problem. They're literally being punished because they had children.

    And yes, there are some who game the system to collect benefits without putting in any sincere effort. It's human nature for some people to want something for nothing (hell, it's probably human nature for all of us) but the baby shouldn't be thrown out with the bathwater. The system isn't perfect, but it's a damn sight better than the alternative.

    --
    Never underestimate the power of stupid people in large groups.
  26. Re:Don't hire union workers by Impy+the+Impiuos+Imp · · Score: 4, Interesting

    My brother used to work summers fixing lawn mowers for Sears. He was forced to join the Teamsters (fell under delivery, I guess).

    The masthead for his monthly Teamsters newsletter looked like the dramatis personae for a mob movie. There were like 15 names, and every single one was Italian with a nickname in quotes in the middle. Crap like "The Knife" aand "Lefty".

    If running for union leadership was a class in an MMO, the character creation sheet would have a line for "Enter nickname here. This is your mob handle and will show up in double quotes over your head between your first and last name."

    --
    (-1: Post disagrees with my already-settled worldview) is not a valid mod option.
  27. Re:Don't hire union workers by WarmBoota · · Score: 3, Informative

    Rock Star Developers, seriously? None of them are that good.

    Agreed. Rock Stars suck as developers. And most of them suck at rock, as well.

    There's not great at astronomy either.

    Tell that to Brian May! (http://en.wikipedia.org/wiki/Brian_May)

    --
    90% of everything is crap. Also, crap is relative.
  28. Re:Don't hire union workers by jedidiah · · Score: 4, Interesting

    The link between labor and organized crime is an important one but not for the reasons you want people to think.

    The link between labor and the mob formed because US corporations had their own private armies that were able to gun people down. The labor movement in the US quickly turned violent and labor needed it's own muscle.

    The mob is just the other side of the coin.

    --
    A Pirate and a Puritan look the same on a balance sheet.
  29. Re: "Rock star developers" or "Senior developers"? by meustrus · · Score: 5, Insightful

    Indeed, the article is not actually talking about "rock stars" but about poaching senior developers. It is also quite possibly the most perniciously agist thing I have ever read. "People do their best work when their head is barely above water," huh? How about the "truth" that the person who's "slogged through it 100 times before" also knows where the pitfalls are? The entire article reads like a bad stereotype of crotchety old developers too arrogant to follow directions.

    --
    I sometimes ask revealing, often ignorant-seeming questions. Maybe they're harder to answer than you think.
  30. Re:Don't hire union workers by Sentrion · · Score: 4, Interesting

    One of the biggest problems with a capitalist system with a welfare safety net is that there is usually a dangerous gap between welfare coverage and financial independence. It doesn't do any good to be on welfare getting all the health care you need and then get a "real" job that offers no health benefit or a health benefit that you cannot afford. Another thing that Germany is doing well is their private health insurance system. It's actually similar to the US system under Obama, except that everybody pays the same percent of their income to fund the system. In the US programs like social security and medicaid tax the working and middle class, but incomes over $100k are not taxed. If the higher incomes were taxed for social security at the same flat rate then all people could enjoy a more secure retirement. As for health care, insurers in Germany are more regulated and can't just screw their policy holders like they do in the US.

    Point is, welfare programs become a trap because making just enough money to no longer qualify for the aid will leave you exposed to so many economic barriers that you inevitably fall back into welfare whether wanting to or not. Someone on welfare may love to walk away with a job paying $40k+ per year, but maybe not so much if the job pays only $25k with bad work conditions, unflexible scheduling, no benefits, and the recipient has special needs children. In the later case I could understand why a single parent would try to game the system to stay protected by the welfare umbrella.

    An alternative would be a form of socialism where everyone has a right and equal access to a baseline level of support, such as government hospitals and clinics, access to community gardens and food pantries, affordable housing projects, etc. When access to such basic needs is universal, then there is no counter-incentive to productivity. People may naturally prefer to work at a job or start a business to have nicer things in life than a subsistence serving of raw vegies, a half-day wait at a community clinic, a shared room in a dormitory, and mandatory 20 hours of labor for the able-bodied to qualify. Knowing that the safety net is available would encourage more lower-income and middle-class to take some risks in starting a business which is good for the economy as a whole. People might be motivated to save a reasonable amount of money - which is good, but also motivated to spend and invest, which also drives the economy. Such a system, however, cannot allow the able-bodied to just lounge and accept a passable existence. Those receiving the aid would have to also provide the labor, but it would ensure that "unemployment" would be virtually non-existant - there would only be those employed at the subsistence level and those employed independently.

    Such a system doesn't necessarily make people "dependent" on the state, since they can attempt at any time under any circumstances to work independently to earn a higher standard of living without being fearful of earning too much and losing benefits, and they aren't "dependent" on the major corporations because they could always quit at any time, endure a short term on subsistence benefits, and then choose to work somewhere else or be self employed. The only risk to such a system is if the government outsourced the "management" of the system to some private for-profit corporation, which is how the US likes to do things.

  31. Re:Rockstars aren't all they're cracked up to be by hackula · · Score: 5, Insightful

    You are describing a cowboy coder, not a rock star. The two could not be further apart. Rock stars are the ones who, by definition, get shit done right. If they cannot write maintainable code, then they are not a rock star, plain and simple. Maintainability is almost always the number one most important quality of any project. Anybody can get v1 out quickly. A cowboy does it by cutting corners and rushing. A rock star does it fast and right, which is what makes them a rock star. If your good, solid, dependable devs can do that, you might have a couple rock stars without knowing it. Remember that skill and ego rarely match up. Joel Spolsky's definition of a rock star is still the best one IMHO: smart and gets things done.

  32. Re:Rockstars aren't all they're cracked up to be by mvdwege · · Score: 3, Insightful

    The problem is that every cowboy coder insists that he is the rockstar, it's the others that are the cowboys.

    Mart

    --
    "I know I will be modded down for this": where's the option '-1, Asking for it'?
  33. Re:Don't hire union workers by iluvcapra · · Score: 4, Informative

    I work in the entertainment industry and am a brother with an IATSE local. Our board of directors are all people who work and have established careers, our organizers and field reps are attentive and always available for questions, the union holds regular meetings and mixers, I have good wages and excellent benefits and even though our health plan's been taking a hit lately, the leadership's been very communicative and always has time to talk to people about the negotiations.

    To each his own.

    --
    Don't blame me, I voted for Baltar.
  34. Re:Rockstars aren't all they're cracked up to be by Teckla · · Score: 5, Insightful

    You are describing a cowboy coder, not a rock star.

    The problem is that management equates "gets stuff done fast" with "rock star", regardless of the unmaintainable mess they may leave behind.

  35. Re:Rockstars aren't all they're cracked up to be by WaywardGeek · · Score: 4, Interesting

    There are both kinds of awesome coders. Most often, seriously good coders wind up being the lone-wolf type simply because pairing them with other coders just slows them down. Most coders I know who don't suck prefer to work alone. It's one thing that draws them to this profession. Those who suck have to work with coders who don't in order to have any positive impact at all.

    I like to think I'm a pretty darned good coder. A lot of coders feel that way about themselves, which is fine. I'm far more into team based development than most, so I generally impose coding practices that help code be maintainable and easily transferred between team members. Partly because of stupid software patent law in the US, I try to "code dumb", using simple algorithms when they will do the job, even when more clever ones would do better.

    However, there's one rock-star coder who I humbly admit has skills far beyond what I ever will have: Ken McElvain, founder and CTO of Synplicity until it was purchased by Synopsis, is an inhuman coder. I was the first coder he hired to work with him at Synplicity, and he'd already written 350,000 lines of C code to do FPGA synthesis. I opened one of the more interesting files that implements one of the many ingenious algorithms Ken invented, and just about had a heart attack. It was over 2,000 lines long, and IIRC, it was exactly one function. There were dozens of variables, and most of them were 1 letter. There seemed to be 2 letter variables only because he'd run out of 1 letter options. There were no comments. Thinking Ken must put his comments elsewhere, I grep-ed the whole code base for comments. There was exactly one, that read "This is a hack." To this day, I doubt any other human understands that hack. I asked Ken why he didn't make smaller functions and why he didn't use longer variable names, and he said it slowed him down, because his typing speed was the primary limit to his productivity. Ken types like a fiend. I watched him develop code for a couple of years, and it was amazing. He writes files from first line to last, literally limited by his typing speed, and when complete, he hits a special icon on the desktop that means "Compile in release mode, and if no errors, push to customer download site". He rarely had any use for a debugger, because the only bugs he'd have would be typos (his fingers were not infallible at the rate he moved them).

    So, a rock-star like I consider myself to be can help build an effective development team, one where I can be the lead contributor. On the other hand, I doubt I've ever been part of a team that collectively could out-produce Ken. I decided to write the first version of HDL Analyst rather than try to help Ken improve synthesis quality, which was a good choice. I was able to contribute and not slow him down. However, Synplicity basically went IPO on the strength of Ken's coding. That's one valuable rock-star, even if he's not exactly a team player.

    --
    Celebrate failure, and then learn from it - Nolan Bushnell
  36. Re:Rockstars aren't all they're cracked up to be by war4peace · · Score: 3, Insightful

    Sorry, but what you describe is exactly a cowboy coder. A genius (granted) who lacks a certain type of vision, and that is the understanding of the fact that the code he writes is NOT readable by anyone else, unless they make a huge effort that's going to cost them lots of time (and therefore money). Yeah, he saves time NOW, but loses maybe 3x more LATER. Well played! Not.

    --
    ...gis sdrawkcab (usually not responding to ACs; don't bother posting as AC)
  37. Re:Rockstars aren't all they're cracked up to be by Matt.Battey · · Score: 4, Insightful

    Couldn't agree with you more.

    Rock-star Engineers produce designs, implementations and tests that are easy to comprehend and extend. They don't produce Golden Code that will never be put in to use. Also they have a more than effective knowledge of the technology and the problem being solved. They are able to lead-by example, and true rock-stars are able to realize when they need to follow and/or team lead when they are are on a larger project.

  38. Re:Don't hire union workers by DuckDodgers · · Score: 3, Interesting

    Look at Wall Street. The people who fucked the economy are still employed. Some of them gave up a fourth yacht. Boo hoo.

    I like the free market when it works. Toyota eating Ford's lunch ten years ago? Awesome. Google taking the lead in search? Awesome. iPhone destroying Blackberry and Palm? Awesome. But clearly that kind of free market competition has been prevented from working properly in the banking industry.