The Pragmatic Craftsman :: Simplicity from complexity : by Stanley Kubasek ::

Great Programmers' Traits

I found an interesting reply to a pretty good post, Kick-ass Software Developer looking for work, submitted by an anonymous reader. Take a look, as I think they’re quite interesting. In the quest to becoming a craftsman, I think this is a pretty good guideline. It’s certainly one I will keep an eye on, and judge the progress I’m making. This is the best list I’ve seen so far.

Posted: 2004/6/10Re: Kick-ass Software Developer looking for work

I’ve had the liberty to work with a few of great programmers. They have had a number of traits that good or average programmers lack. Each of them had a few of these, but I don’t think any had all of them.

- Understanding of the customer’s perspective. A programmer that can put themselves in the customer’s shoes can stop a bad decision from becoming a nightmare. Sure, it is probably someone else’s job to design the product, but I’ve found that developers usually have the best understanding of the product on the whole. The great developer can pick out inconsistencies before they effect the end user.

- Willing to dive into unknown technology and come back with something usable in a short amount of time. Yep, the whole team may be familiar with Java, but maybe XSLT is a mystery to all. The guy that can give himself a crash course in the technology and come back and show everyone else how it’s done is going to save a lot of time, and allow the team to use technologies that save even more time.

- Able to teach others effectively. This is related to the above, but goes beyond. It allows you to hire lesser qualified people and bring them up to a much higher level.

- Stays on top of new technology. Some developers know their languages and APIs and don’t plan on learning anything new. Others are constantly adopting new technology, skills, or concepts. I’ve known developers who don’t use a computer at home after they leave the office. I know others who are constantly reading blogs, whitepapers, journals, and downloading new software. Most of the time, what you’re trying to do has been done before by someone else. The more you know of what is out there, the more likely you are not to re-invent the wheel.

- Is usually right. The sum of the knowledge and experience in a person’s life effects every decision a person makes. A good developer has seen enough and gone down the wrong path enough times to recognize the right decision.

- Is a good at leading others. This one had been done to death, but there’s nothing worse than going on vacation and coming back to find nothing done.

Just some things I’ve noticed over the years of being fortunate enough to work with very talented people.

Favorite Quote




Currently Reading


© 2001-2020 Stanley Kubasek About me :: Contact me

Me on Twitter

»see more

Recent Entries