Smart and Gets Down

When asked about the key traits of new Google hires, Marissa Mayer has repeatably stated the following soundbite: smart and gets things done. This also happens to be title of Joel Spolsky’s book on finding great technical talent.

In Smart and Gets Things Done breaks down how to go about to find, attract, and retain top talent.

A key advice is to be selective, but not just in the people you hire but in how you advertise your job opening. You increase the signal to noise ratio by advertising not in your local Craigslist but on programming sites and forums that attract the sort of developer you are looking for.

To attract top talent, Spolky recommends spending top dollar. Go all out to recruit and impress star programmers. Pick them up in chauffeur cars, put them up in swanky hotels, create a creative atmosphere where people want to work. Every developer in your office should have the no less than two monitors and a Herman MIller Aeron chair. Your office space should ooze kewl, not software sweatshop.

One controversial selection criteria that Spolky advocates is scoring resumes on their English. I tend agree here with Spolky even though I’ve encountered some great programmer that get things done, but just can’t communicate with the rest of the team. Code is not the only form of communication that developer should proficient, written and verbal communication is important in writing specifications, debating designs, cooperating with clients, and ultimately managing other developers.

Another piece of advice handed out by Joel on hiring was to piggy back on other selection process. It helps your selection process if your candidate has proved themselves in other highly competitive situations, like top school, companies, or institutions.

After reading Smart and Gets Things Done, I feel that there is a lot than a soundbite. If I could characterize the traits I like look for in a candidate into a catchy phrase it wouldn’t be so catchy. I tend to seek smart, gets things done, shows passion, and it’s a jerk sort of candidate.

Their is a tight balance of the traits you find important in a candidate and the business needs at hand. Someone that is really smart and get a lot done might just want to rewrite the entire system in Scheme and undermine your management team. To me, ‘gets things done’ means someone that rolls up their sleeves and digs in whether it’s a VBS or bat file or Java program or Python script.

Here are some sample quotes from Smart and Get Things Done:

  • The great software developers, indeed, the best people in every field, are quite simply never on the market. The average great software developer will apply for, total, maybe, four jobs in their entire careers.
  • One good way to snag the great people who are never on the job market is to get them before they even realize there is a job market: when they’re in college.
  • Most programmers aren’t just looking for a gig to pay the rent. They don’t want a “day job”: they want to eel like their work has meaning. They want to identify with their company.
  • Years of experience have taught me that programmers who can communicate their ideas clearly are going to be far, far more effective than programmers who can only really communicate with the compiler.
  • Brilliant programmers who have trouble explaining their ideas just can’t make as much of a contribution.
  • Our company criterion for selective is usually getting into a school or program that accepts less than 30% of its applicants, or working for a company that is known to have a difficult application process, like a whole day of interviews.
  • The entire industry of professional headhunters and recruiters is bizarrely fixated on the simple algorithm of matching candidates to positions by looking for candidates who have the complete list of technology acronyms that the employer happens to be looking for.
  • I always reassure candidates that we are interested in how they go about solving problems, not the actual answers.
  • The Econ 101 manager assumes that everyone is motivated by money, and that the best way to get people to do what you want them to do is to give them financial rewards, and punishments to create incentives.
  • The real trick to management is to make people identify with the goals you’re trying to achieve.