What does it take to make a rock star software developer?

From ReadWriteWeb, “Top 10 Traits of a Rockstar Software Engineer.”

See the full post for the details of each point.

  1. Loves To Code
  2. Gets Things Done
  3. Continuously Refactors Code
  4. Uses Design Patterns
  5. Writes Tests
  6. Leverages Existing Code
  7. Focuses on Usability
  8. Writes Maintainable Code
  9. Can Code in Any Language
  10. Knows Basic Computer Science

What do you think about this list — does this list represent a rock star software engineer? I personally think the list is too slanted on “Agile” practices. What works for a web application software provider may not work well for an ISV or an enterprise developer in all cases.

I would have expected some mention of one of the classic books of software development to be mentioned, Code Complete: A Practical Handbook of Software Construction by Steve McConnell.

Maybe the biggest issue I have with the list is that even if I checked all of these off while interviewing someone, I don’t know that I’d hire them. There are a few things I’d add for a developer to be a rock star. The following are a few ideas.

  • Certainly, I look for “passion” or “energy” when interviewing. You can love to code – but will you love coding what I need you to code? Will you believe in the project or application? Will it excite you?
  • Do you work well on a team? Individuality is important, but being a great peer is an important trait to have. Maybe the best way I could think about this is: even rock stars need a band (or at least a supporting crew). Having a good team behind the “rockstar” is just as important as having the rockstar … actually, maybe more important! So, don’t leave the band out of the rock star.
  • Do you understand the platform you’ll be working on? How well can you learn it? It’s not about a programming language or knowing basic computer science … if you don’t know how the system works (ticks), are you going to be as effective as the engineer who does (I doubt it).
  • Can you communicate well — in whatever form is necessary? It’s not about the language so much as your ability to communicate ideas, problems, solutions, etc. well to others. I’m not suggesting you need to do a presentation to a Board of Directors or 500 people at the next conference … just to your coworkers, one on one, etc.

What would you add?

One Comment

Comments are closed.