As someone looking for a job, I often view the job description in order to try and analyze whether I should even bother applying to such-and-such a company. Recently, I realized that the process of determining whether a company is good or not can be completely automated. In other words, you can write a computer program that parses the job description and produces a score or some kind of index regarding the employer. Here are a few ideas:
- # of listed technologies. Basically, there is a 'golden mean' of a number of technologies that a company should list for an opening. If the number is too small, the company is probably a bit clueless (or doesn't care) regarding how software is made. (For example, they mention C#, full stop. It's just plain silly.) On the other hand, there are job descriptions with 20 different skills required, sort of "C#/F#/C++ COM/IDL WinForms/WPF/WF NUnit TFS/Subversion" et cetera. It's silly too because finding a person with all those skills is near-impossible, so you'll have to compromise anyway. It's not a sign of wisdom.
- Old technology. As soon as I see COM in a job description I just ignore it. Don't get me wrong - I've spent a lot of time working with COM/DCOM while at Uni, but I don't remember much, and these are not the skills I want to be picking up again. Whatever company is looking for old tech (e.g., Cobol), they are probably looking for 40-year-old developers who are either too lazy or too inept to actually learn new stuff.
- Microsoft bias. I often pick this one up when a job posting is 100% Microsoft tech. Yeah, I'm a .NET programmer, but when I see VsTest on the job description, I just know that the people I will be working with are not very smart. Same goes for requirements of Linq2Sql or EF - I mean, you like the framework, great, you use it. Unfortunately, this also affects some of the tools that I really like (e.g., TFS) because, although TFS is a great idea, let's face it - the companies who do use it are large soulless corporate monstrosities.
- Vague wording with respect to things that people probably don't understand themselves. Like when you write "should know how to manage requirements". WTF?!? So some HR chick got an order from high-up to post an IT position with some vague guidelines, she follows them verbatim. Heh, I guess I should be thankful: those vague features are easy to spot. Not sure about computer processing though. "Work in a nice company". Yeah, I like that. Very much. FAIL.
Overall, I think it might be possible to write a parser that can read in the job posting and determine whether it's even worth bothering to apply. Of course, some of the stuff (e.g., the prospective co-workers' ineptness) might not come out immediately, but at least you can diagnose the really bad cases. Oh, and whenever there's a line saying "overwork is nothing common" a big blue-and-yellow swedish flag can pop up. Yeah. That would be cool. Hehe.