Before writing your next job ad, look at companies successfully recruiting talented engineers.

According to a recent Google job posting, here are the requirements to work at Google:

  • BS or MS in Computer Science or equivalent work experience (Ph.D. a plus)
  • Experience programming in C++, Java or Python
  • Extensive knowledge of programming for Windows and/or Mac and/or Unix/Linux environments
  • Strong computer science foundation

Here are the requirements for a typical engineering job at Facebook:

  • B.S. or M.S. Computer Science or related field
  • Knowledge of perl or PHP or python
  • Knowledge of relational databases and SQL, preferably MySQL
  • Knowledge of web technologies: XHTML, JavaScript
  • Experience with C, C++ a plus

It is entirely possible that both Facebook and Google have far more restrictive requirements than they advertize. But I am only worried about the job ads for now. What do you notice?

  1. There is no “5 years of experience required”. You know what? Linux Torvalds was 21 when he created Linux. Mark Zuckerberg was about the same age when he created Facebook. Time spent sitting in front of a computer is a really poor measure of tech. expertise.
  2. There is no long list of buzz words to match. Notice how  Google states “C++, Java or Python” and not “C++, Java and Python”. Why is that? Because it would be stupid to reject people who have not mastered C++, Python and Java.
  3. Though Facebook and Google are at the leading edge, they rarely include specifics in their requirements. You want an expert in JBoss and Hadoop. Really? Talented people pick up the specifics on the fly.

2 Comments

  1. Yes, the first thing I do when looking for a job is to discard all the employers that are looking for people with very specific skills to fit their needs (e.g experience with C++, MFC, MySQL and Perl) instead of a more generic (e.g {Bachelor, Master’s} degree in plus experience in one of the following languages: ).

    I found that these companies usually work on a hire lot indiscriminately in good times and fire equally indiscriminately. It indicates that they are not willing to hire a smart person, invest in him, and keep him happily employed and rewarded appropriately: they want a disposable employee that can hit the ground running.

    Why are you letting them know? — it as a great filter to use :) .

    Comment by David — 17/8/2011 @ 21:54

  2. @David

    Why are you letting them know? —

    Because these job ads rub me the wrong way. They show a lack of respect for techies.

    I may not be looking for a job right now, but I expect companies to respect people with tech. skills.

    Comment by Daniel Lemire — 17/8/2011 @ 22:02

Sorry, the comment form is closed at this time.

« Blog's main page

Powered by WordPress