Thought I’d add to the conversation Ryan just started on his post about interviewing programmers. In addition to the qualities he just mentioned, here are 3 requirements I have for web developers before I even consider working with them:
Have to be Happy – This is sort of a no brainer and was mentioned by Jason Fried in his 37signals presentation on How to Make Big Things Happen with Small Teams. Basically, people who are happy with their lives are more likely to come back each day with passion and pride. People who are unhappy tend to be distracted and bring baggage to the workplace that just doesn’t need to be there.
Have to be Honest – It’s just too easy to steal and lie when it comes to doing what we do on the web. Paul Graham touched on this in an essay and it comes down to this: smart people know that admitting you don’t know something is not a sign of weakness, but an opportunity to learn and grow. I think the success of the new crop of Web 2.0 and open-source developers comes from understanding and appreciating that their work is built upon the shoulders of others—that the community grows by trust. The way I see it, employers (regardless of the profession) should always be looking for people with honor and integrity. Honest programming leads to less stress and less problems in the long run. In addition to the good kharma, it makes things easier. Period.
Have to be Resourceful – If you’re doing work that’s cutting edge and constantly using new technologies, it’s going to be impossible to find someone with all the skills necessary out of the box. Because no one knows everything, the ability to find a solution is sometimes better than the ability to create one by brute-force. I am always surprised by how many people out there have no idea how to ask appropriate questions, summarize main ideas or predict potential roadblocks—all skills that are essential for using tools like search engines effectively. It’s always a good decision to have someone who knows how to find, learn and implement new knowledge quickly and successfully.
Nifty stuff.
One small thing I noticed. Your email validation is wrong. E.g. it’s perfectly valid to have an apostrophe ’ or a + sign in an email address according to the email RFC.
Sure it’s not all that common, but if you’re trying to promote good code, it might be something to consider.
Everyone needs a hug.