What makes a ‘Rockstar’ Developer?

I’ve recently been involved in a discussion about what makes a rockstar developer for a startup. This has always surprised me- the reality of the matter is that there are no rockstars, only people who think of themselves as rockstars, and those are the last people you want in charge of your product. So I figure, as someone who’s been around the block a few times, it would be good to come up with a list of what actually makes for a “rockstar” developer. If I miss anything, feel free to contribute in the comments.

1- They don’t think of themselves as rock stars.

Arrogance is perhaps a key requirement in being an entrepreneur, but overconfidence will drain your cash pool faster than hookers and blow.

2- They have a proven track record of multiple shipped products.

You don’t want a hotshot kid out of school, you want a seasoned professional, preferably one who knows how to write applications for the industry you’re trying to reach.

3- They care more about frameworks than plumbing.

Unless you’re trying to design a complex new mathematical algorithm (in which case you should probably be partnering with a university research lab), you want someone who can grasp a system rather than a method. If this guy ends up in deep technical discussions about the optimal way of implementing a sort, you’ve got the wrong guy.

4- They’re not willing to work for free

Risk management and strategic thinking is key to long-term project viability. If you have someone willing to work for equity, they’re willing to take risks with your payment processing gateway just as easily as they’re taking a risk on you.

5- They believe in development process and best practices to speed up their work.

The last thing you want is someone who’s trying to reinvent the wheel. Mind you, this also likely means that the first two weeks or so of development you’ll see a lot of development support tools get set up and used before code actually starts, but that’ll give you time to get your documentation in order.

6- They have a positive attitude.

If someone bitches, they’re looking to blame themselves. Instead, you want them to identify their concern as a problem they can solve.

7- They get uncomfortable when you ask about their social life.

’cause, well, currently it’s still socially odd to prefer coding on a saturday night.

8- You don’t want Alphabet/Acronym soup in their technical skills.

Lots of languages means little depth in each, and depth = speed. Pick a serverside language (PHP, .Net, Ruby, etc), pick a database (MySQL, SQLServer, Postgres, etc), and pick a frontend (Flex, Mootools, JQuery, etc). Focus on that. If a dev has only a few languages this does not mean they’re stupid- it means they know how to focus.

9- They’re involved in the community.

Speaking, attending, whatever, you need to make sure their technical skills don’t stagnate, and that they’re willing to accept ideas from outside.

10- You respect them

Respect means you are willing to listen when they tell you you’re full of it, and that’s key in a partnership. You’re not looking for a monkey you can put in a corner who can bang out some code- you’re looking for a partner who’ll act as a technical sounding board.

So now I have this question: What makes for a rockstar business partner?

9 thoughts on “What makes a ‘Rockstar’ Developer?

  1. #7 made me laugh, and #8 made me think. Often I think we want developers who know ASP, JSP, PHP, MooTools, AS3 and XHTML because we don’t really know WHAT we want. if it’s a new endeavor, that may be a good thing: you want someone who’s dabbled in a few different things and can tell you what the relative pros and cons are. If it’s an existing project that you need someone to own and optimize, then of course it doesn’t matter what other skills he has.

  2. If the business was in the prototyping/exploration phase I would agree that evaluating pros and cons is critical, however I feel that it’s better to go to the community to participate in that kind of a discourse. Technical exploration is best done either in the Lab or by hobbyists, and if you already have a business model you want to pursue the last thing you want is someone who doesn’t really know how to get there.

  3. I may understand: you’re talking about a tech-driven business proposition? Otherwise, I think a business model doesn’t necessarily need to be tied to a particular technology, and in fact, it probably shouldn’t be.

  4. I saw your blog link on another site, just thought I’d take a peek. First thing is about hiring a “rock star”. I won’t be back.

    Some people think that the “rock star” term is really cool. I seem to see it a lot in the Flex/RIA world these days. Seems to be mostly recruiters who don’t have a clue what they’re looking for. I really think it’s sad when supposedly knowledgeable technical people start using it. Not only does it mean you think one person will save your project or organization, but, it’s really simplistic and extremely naive concept.

    Whenever I see someone who claim to be, or has a desire to be, or think they’re looking for this “being”, it mostly means you need to steer clear of them. And, a “rock star” doesn’t make your project. Unfortunately, it takes good practices, knowlege, experience, and, dedication.

    These are rarely found in a “rock star” developer, sir.

  5. A pity you won’t be back, Dave, because fact is we agree on pretty much everything you’ve said- in fact this entire post is about the fictitious “rockstar” developer and what qualities you really should be looking for when hiring development talent. I package the categories a little bit differently than you do, but if you cut away the semantics we’re both taking (mostly) the same position.

  6. Excellent post!!

    “They care more about frameworks than plumbing.” nails it… what differentiates a rockstar developer is is able to envision and think holistically.

Leave a Reply