I’m a pretty big fan of Joel Spolsky, I don’t necessarily agree with everything he says but there seems to be a rational basis for almost everything he says. Today whilst deleting my e-mail I spotted a link to his latest article about the road to FogBUGZ 4.0, but also a link to this job posting (don’t worry Graeme I’m not going anywhere, hiring just seems to be topical at the moment).

 

Out of curiousity I clicked on the link to see how he writes his job posts, and I was so impressed with what I saw that I thought it would be fun the analyse it line by line not just to restate the obvious, but see what is written between the lines.

 

First off, its starts off with a pitch telling the reader who Fog Creek Software is, their reason d atre' and why they want to hire more staff.

 

Fog Creek Software is a small startup in New York City. We started in September 2000 based on the simple idea that if we built a company that was a great place to work, we would be able to attract great talent. Sales of our products CityDesk and FogBugz are growing rapidly, and we need help coping with the demand!

 

Pasted from <http://www.fogcreek.com/Jobs/SDE.html>

 

Working for a company that knows what their business is, has managed to produce a demand (largely through word of mouth I might add) for their product is a privilege that not many of in the software business are blessed with.

 

The beauty of being up front about the company and the vision means that the reader can either sign on or bail out early. On my frustrations about the way recruiting organisations work is that they shroud the potential employer in anonymity. If the company expects to hire the best people they should be brave enough to say who they are and what they stand for.

 

Assuming you read past the first two sentences you are confronted with this little bullet point.

 

  • Design, develop, code, test, document, and support the software that makes Fog Creek great. You may be working on CityDesk, FogBugz, our internal systems such as the Fog Creek online store, or upcoming, unannounced products.

 

Pasted from <http://www.fogcreek.com/Jobs/SDE.html>

 

Its speaking right at the developer now, the first six words are the job description and it clearly tells you what is expected to you. It could only be better if design, test, document and support were bolded or capitalised. The trailing sentence tells me that when work needs to be done its all hands on deck to get the job done.

 

Part of shipping software includes building the sales channels and for the shrink wrapped little beauties that Fog Creek make that means you may just have to maintain shopping cart code so learn to deal with it. Another thing that I really loved was the last sentence on this bullet point.

 

  • We do not hire based on a specific list of buzzwords, technologies, or popular acronyms on your resume. Today we happen to use C++, Visual Basic, VBScript, Perl, PHP, Java, JavaScript, XHTML, CSS, and C# in our organization. Tomorrow we may be using something different. Whatever technologies, languages, or development environments you've been using, we expect you have mastered them in depth, and we expect that you will be able to master any technology, language, or development environment that we need in the future.

 

Pasted from <http://www.fogcreek.com/Jobs/SDE.html>

 

I love it because recently I've had to sit in disbelief as team leaders have told me that they can't build something in technology X, not because they couldn't technically achieve it, but because some of their staff members could complain because they haven't been given a six months notice that they are going to have to work with it.

 

Is it just me or are these people in the wrong industry? The personalities that we need in this industry are those that not only cope with emerging technologies but master them.

 

If during a chat in the coffee room someone floated the idea that we might want to look at technology X to solve problem Y - you can bet that I would be hitting the Internet that evening to understand everything I could about it to be able to contribute intelligently to future conversation and help make more informed decisions.

 

Now, if you are left in any doubt about the breed of person required for the job Joel pretty much nails it with this next bullet point.

 

  • Incredible coding skills. Your friends and coworkers describe you as an "animal." Your programming ability is way above average, as demonstrated by a continuous string of successful projects.

 

Pasted from <http://www.fogcreek.com/Jobs/SDE.html>

 

Only a geek could appreciated being called an "animal", whilst I've been called a "freak" before I'm pretty sure that was only in relation to my ability to read and actually understand an IETF RFC and they apply it talking directly to a POP3 server using a telnet session.

 

The successful projects thing is pretty important though. The reality is that the odds are against us when it comes to never working on an unsuccessful project. The good thing is that most projects aren’t doomed to failure from day dot. It takes carefully applied mismanagement and incompetence coupled with a complete lack of desire to get there.

 

I think Joel is looking for the people that have had enough desire in the past to balance out the mismanagement and incompetence and come out a winner. I guess the theory goes that if you can do that with a hopeless situation then imagine what you could do if you worked in a well maintained incubator.

 

And finally, the benefits.

 

  • Competitive salary commensurate with experience
  • 21 paid vacation days per year
  • 4 paid company holidays per year
  • Health insurance including spouse and family
  • Dental plan
  • Health club reimbursement up to $70/month
  • Free subway/bus pass (monthly metrocards) worth $76/month
  • Free soft drinks, tea, coffee, etc.
  • Frequent free lunches

 

Pasted from <http://www.fogcreek.com/Jobs/SDE.html>

 

The nice thing is that its all spelled out here with the only variable really being the base salary. What I find really exciting is that there has been some thought put into where the business is and how the employees are going to get there. I've never lived in a city bigger than Melbourne so I can only imagine how hard it would be getting into New York every day in time for work.

 

All in all I really liked the job post, in fact I might borrow part of the style in future. Thanks Joel!