10 ways to show you're a programming rockstar

How many programmers do you know who are rock stars? What characteristics do they have?

January 25th, 2011 at 8:00am — Comments: (36) — By: Jonathan Danylko — Tags: Developers

One ball in a group of squares

It seems nowadays that programmers are a dime a dozen, but how do you pick the best programmers from the rest of the crowd.

It's not just about coding (although that is a big factor). It's about building your skill set over the years and nurturing them so you can stand out from the programming "collective."

What characteristics makes them stand out? Are they easy to get along with? How long have they been programming? Are they teaching you things you never knew were possible? Here's how to find out if you are a programming rock stars!

  1. Master your language and tools. Whether it's Visual Studio, Eclipse, or even Aptana, your programming tools should be second nature to you when developing that next web application. Just like a plumber or carpenter, if you don't have the proper tools, you won't get the job done right. 
     
  2. Enhance your tools and environment. With that said, even though you've mastered your tools, always strive to find ways to enhance your environment. This may include plug-ins to Visual Studio or Eclipse or a code generation tool that works along side your environment. If you're not looking for better ways to enhance your productivity, you may be working yourself into an early grave.
     
  3. Research new technologies. While your primary language may do everything you need, make time to research your craft and experiment with new frameworks that wrap around your existing technologies. For example, while programming in web forms with C#, I heard about a new framework from Microsoft called MVC. Since I've started working with MVC, I've been programming in MVC for more than 2 years now and I haven't looked back or regretted my decision since.
     
  4. Leverage your existing code you wrote. Programmers who write code and then immediately disregard it are missing out on the most exceptional tip on this list: start building your library of routines and techniques. If you are in a corporate environment, yes, you will have a corporate library to pull from for your projects. If you are an individual programmer, yes, you will have your own collection of routines or libraries that you can use in your "outside" projects. As the object-oriented saying goes, the routines are reusable.
     
  5. Automate like crazy. If you've been around the programming block for a while, you know that there are always quicker ways to accomplish certain tasks. It's now getting to the point in this industry where if someone asks you for a web site, you can build one relatively quick. Then they start asking for features. It's the features part that makes the difference and slows you down.
     
  6. Perform proper analysis. New developers always shoot first (start coding) and ask questions later. Take the time to analyze the project and ask as many questions as you can. The more questions you ask upfront, the better your ability to complete a more thorough and clear design of your application.
     
  7. Perform Unit Testing. Along with preceding your coding with proper analysis, always finish your coding by performing unit tests. This not only tests the quality of your code but will also let you know when your system fails on regression testing. Unit Testing should be the "checks and balances" of your programming.
     
  8. Extend your reach. Most developers keep to their code and that's all they do. Break out of your comfort zone and read up on usability studies, how to document your code better, and/or using better design techniques. Expanding your skills into other areas will do three things: 1. Make you more visible to other people; 2. Make you more valuable to others because of your thirst for knowledge; and 3. Provide you with more opportunities than just programming.
     
  9. Communicate effectively. This is in regards to project management, coding, documentation, and impromptu meetings. If you can't explain an extremely awesome cool coding technique to your peers or communicate why a particular feature shouldn't be in the project to a project manager because of a time constraint, you may need to work on your verbal skills instead of your coding skills.
     
  10. Make time to assist others. You will seem as a definite team player by taking the time to help a fellow programmer in need. Help them understand a new concept or technique that is unclear to them and they will be grateful for the help and see you as a definite resource and go to guy.

As you can see, there are a lot of factors to take into account when deciding who is a programming rock star and how they will be perceived by other team members or by clients.

Come to think of it, you could even use some of these factors for general interview questions.

Did I miss any factors? What skills or characteristics do you think makes a programming rock star?

Picture of Jonathan Danylko
  • Jonathan Danylko Twitter Account LinkedIn Account Facebook Account

Jonathan Danylko is a freelance web architect and avid programmer who has been programming for over 20 years. He has developed various systems in numerous industries including e-commerce, biotechnology, real estate, health, insurance, and utility companies.

When asked what he likes doing in his spare time, he answers..."programming."

Related Posts

36 Comments

  1. January 26th, 2011 at 7:57am
    Absolutely! Definitely a good recommendation.

    Thanks pafcio00!
  2. pafcio00
    January 26th, 2011 at 11:50am
    Another thing I would add.
    Don't discard any opinions and pointers from other developers. Even beginners could have something useful to add. I met few programmers with huge knowledge and experience who didn't care what some newbies said and treated them as inferior which made bad atmosphere.
    If you want to be a rock star programmer listen to newbies, correct them if it's needed and give them credit if they come up with something useful.
  3. Javed
    January 26th, 2011 at 2:41pm
    Nice article!

    About performing proper analysis, even the Rock Star programmers can end up spending days analyzing and spending time in lots of meetings before they can actually get started on coding. So, there needs to be some sort of balance so you don't end up missing a deadline because of all the analyses.
  4. Bill
    January 26th, 2011 at 6:03pm
    You are describing a corporate drone, not a rock star.

    A programming rockstar is someone who comes up with ideas no one else thinks of and get things done.
  5. Bill 2
    January 27th, 2011 at 12:03am
    I agree with Bill. A programming rockstar is someone who wakes up at 10am, checks his mails for 7 seconds, deletes them, writes an alarm clock in assembler, sets it to 11am and sleeps again..
    IDE, unit testing really?

    "..you may need to work on your verbal skills instead of your coding skills.."
    pff.. your code should speak for u, its the clean pure art.. well then again rock is no _ART_
  6. January 27th, 2011 at 9:16am
    Very nice post.

    I think I have "ok" behaviors as a programmer, but it's always good to refresh my mind about wich are the really good ones and how to proceed to get that "up".

    Gabriel
    :)
  7. Sven
    January 27th, 2011 at 9:28am
    This article could have been written by a business analyst or some other non-programmer who has never written a line of code in his life.
  8. rr3
    January 27th, 2011 at 10:02am
    Dude, I hate to be nit-picky but MVC is hardly new and is definitely not a invention of Microsoft. While I'm sure you are referring to a particular implementation from MS, the wording of your statement leads me to question the authors knowledge as a whole.

    That being said there are some valid points made. However these are tenets that all programmers (or more properly, Software Engineers) should adhere to, not just 'rockstars'.
  9. January 27th, 2011 at 10:25am
    Bill, that's an entrepreneur, not a rockstar programmer.
  10. Dan
    January 27th, 2011 at 10:28am
    Boring
  11. Cyboar59
    January 27th, 2011 at 10:43am
    Good start on an article. It needs to be fleshed out some.
    If you preface each point with "to show you're a programming rock-star you need to..." then in the paragraph following I suggest you need to demonstrate how this point demonstrates that you are a the star you want to be.
  12. January 27th, 2011 at 11:07am
    It is a nice article, but instead of saying "programming rock star" I would have titled it "great employee programmer"

    Nice article, don't get me wrong.
  13. Dotnet
    January 27th, 2011 at 11:23am
    Most programmers are misfits (including me) but the general principles apply. Don't be arrogant that you’re the best, mentor your minors, and provide a cool work environment for the other losers who just tune out the daily grind. Happy programmers are productive programmers and we are all children.
  14. JohnC
    January 27th, 2011 at 11:42am
    Excellent article, however if you change it from "how to be a rock star programmer" to "how to keep your job and get rich and not end up living in a dumpster in this bad enconomy - programmer" then perhaps people would get the point a little more clearly.
  15. January 27th, 2011 at 11:47am
    I am a little startled by some of the remarks left here. The author expressed himself well and his observations, though apparent to some, are all valid. As someone who has had both feet in both the corporate and go-it-alone environment I can attest to every point the author has made. Two points, though, not mentioned by the author and equally valid are that if you work in a corporate environment watch your back and always keep your resumes up to date; it won't matter if you are an ace programmer or a brown nosing hacker who couldn't code to save your life because someone is going to try to stab you in the back and that will most likely be the person who you least expect. And anyone one who has lived through a change in management, commonly known as a reorg, knows that your skills and contributions will hardly come into play when the new outside management team takes over. So, watch your backs and always keep your resumes up to date.
  16. Visitor
    January 27th, 2011 at 11:49am
    Still... what's the relation between programming and rock? Popstar programmer is not good? Or simply "star programmer"... :)
  17. January 27th, 2011 at 11:50am
    Nice set of ways but you got to have some logic as well to become a programming rockstar!!..
  18. Mike
    January 27th, 2011 at 12:00pm
    Good programmers don't care about being rockstars, they thrive on the challenge alone. The ones who strive to be rockstars (that I have met) are usually poor programmers, and just think they are rockstars.
  19. Patlatus
    January 27th, 2011 at 1:36pm
    Wow! Great article - that's all I can say.
  20. PTBarnum
    January 27th, 2011 at 3:06pm
    tedious corporate drone... prosaic... I hate this trend of people writing filler fluff to generate page clicks .. its all about pagerank and does nothing but rehash and regurgitate content that has been on the net since its start.
  21. Mike
    January 27th, 2011 at 5:28pm
    Problem with your wording... "MVC" isn't so much a technology as much as a programming style/paradigm.

    A technology would be the entity framework, django web framework, go lang, event driven sockets, etc...

  22. amy
    January 27th, 2011 at 10:46pm
    MVC is not new but article is good refresher!
  23. Victor
    January 28th, 2011 at 2:02am
    You have missed very important things "INNOVATIVE WORK".
    We Must try to develop something Extra Ordinary!. are you agree?

  24. burnout
    January 28th, 2011 at 3:39am
    Assuming the world works on fairness great advice.

    I didn't see a single mention of self promotion, disaster avoidance, dealing with unethical / incompetent programmers in the same team, reverse management, spotting hidden agendas, avoiding 'flogging the willing horse' syndrome in lazy management, secure the credit first THEN deliver the work worthy of said credit (i.e. be aware of credit thieves BEFORE they have a chance to work their "skills" on you), cover your own ass, etc.

    The above is fine but putting it higher priority than some real world skills has not been a recipe for success in my experience. The cynicism in Dilbert I have found far more beneficial. There are dodgy programmers out there and managers in charge of budgets far greater than their ability at actual management should warrant. You don't need to be a brown nose / scammer yourself, but you do need to know how to deal with them, and generosity of spirit is not effective to those kinds of people.
  25. Maykon
    January 28th, 2011 at 5:37am
    Well done. As a beginer , It is definiytely, a good piece of advice.
  26. Rafi Ahmed
    January 28th, 2011 at 7:06am
    hay man thats really good to read your article. I am really impressed to read this article and got new ideas about my programming tools. Especially point 4. Other points are also too good. Thanks man... :)
  27. sachin gupta
    January 28th, 2011 at 7:24am
    its awesome.....
  28. January 28th, 2011 at 8:15am
    Great work! Thanks. But I say that to think from the team manager side will help us expand our contribution to the whole team.
  29. Paul
    January 29th, 2011 at 1:11am
    @Victor: "You have missed very important things "INNOVATIVE WORK".
    We Must try to develop something Extra Ordinary!. are you agree?"

    In my experience, innovation isn't generally needed or wanted... work must be done to the specification. True, some behind the scenes innovation might be needed to solve a particular problem to realise the spec, but the end-user won't see that.

    To my mind, a rockstar would be someone who can create logical code, with efficient algorithms, and top-of-the-list would be BUG-FREE code that works as designed AND works as expected.

    After all, we create programs for end users to use. If the users are happy, then management's happy. If management's happy, the development team leader is happy. Having a happy team leader makes life sooooooo much better!!!
  30. Mark McGinn
    February 1st, 2011 at 2:06pm
    rockstar creates logical, efficient, bug free code that works as designed?

    This sounds more like a session-programmer - skilled and consistent but not creative. Rockstars have personality and are flexible as well as creative.

    Every great band needs solid backup but if you haven't got a bit of flair then spend the rest of your life playing on cruise ships entertaining retirees.
  31. Rodrigo Caballero
    February 2nd, 2011 at 12:05am
    Excellent article. I think that you can call yourself a rockstar, a popstar or whatever, but, the main point is to perform your best job ever everyday and these kind of examples helps out a lot of people to believe that it's possible to be better everyday.

    Maybe a lot of people can disagree with your thoughts @Jonathan but that's the difference between giving something and just being a critic.

    An entrepreneur always sees an opportunity where most of the rest sees a problem
  32. February 2nd, 2011 at 8:57am
    @Rodrigo Caballero: Yes, I agree completely with your comment to do your best. I keep telling my son that I've been doing this for over 20 years...and I'm STILL learning new things everyday.

    @Paul: I couldn't agree more about having a happy Team Leader! :-)

    @Mark McGinn: Yes, I completely agree with that statement as well. The flexibility and creativity should be visible in their code as well...and besides...I haven't met a programmer yet who doesn't have a good sense of humor.

    @Mike, @amy, @rr3: True, MVC isn't new or a new technology, but at the time in the .NET world, it was definitely a different concept to adapt to coming from WebForms. I'm soooo glad I moved to it.

    @Visitor: I always throw on some rock/heavy metal/techno while programming. :-)
  33. jim
    February 2nd, 2011 at 1:32pm
    @Mark McGinn: "..spend the rest of your life playing on cruise ships entertaining retirees. "

    yup, pina coladas vs jack daniels. it really is a balance of mixing the attitude with a 'little' appreciation for what's expected. i personally 'love it' when anyone looking at the visual part of my work retorts with 'but it is of course very simple'. job done, a bit like the same way that Jeff Porcaro lays out 'simple' 4/4's... simples...
  34. February 17th, 2011 at 12:54pm
    Hello Jonathan,

    Thank you for this article.It is really good article to read. It encourage me to examine my skills as a rock-star programmer. I found it very useful and practical for every programmer. I like it.

    Ravi
  35. December 19th, 2011 at 1:18pm
    Dude, I hate to be nit-picky but MVC is hardly new and is definitely not a invention of Microsoft. While I'm sure you are referring to a particular implementation from MS, the wording of your statement leads me to question the authors knowledge as a whole.
    There are dodgy programmers out there and managers in charge of budgets far greater than their ability at actual management should warrant. You don't need to be a brown nose / scammer yourself, but you do need to know how to deal with them, and generosity of spirit is not effective to those kinds of people.
  36. December 22nd, 2011 at 1:34pm
    Awesome and so great blog.Such a nice post.I really like this one.It is so much informative and very helpful for his followers.Many many thanks for sharing this post.Keep it up.

Post a comment