It's extremely common.
You would think that the list would be specific to the task at hand, right?
Unfortunately not, because the list is frequently taken straight from the personnel job description, Duties and Responsibilities, Skills, Programming Languages,etc.
So you end up with what is the (appropriately) generic description for the position at that level, which may cover hundreds of positions at the same level, e,g. "Junior Programmer".
In reality, for a given position, for actual hiring purposes, it's a 'wish list' and the actual list is likely to be a subset. Just look carefully at the content and apply good judgement in the given domain area (which presumably you know), e.g. for programming, java and C++ would be similar [easy, everyone, wait for the comparison], but SQL and HTML or Ruby and Excel, not so much ;)
If you take a look over the whole list (and it sounds like it's pretty long, right?) you should be able to glean the overall view, e.g. Graphic Designer vs Backend Programmer vs. Datawarehouse Programmer, etc. As you're be looking most at your subject area, you should have a fair idea of what's likely to really be key and what's not.
Of course there are places that actually are looking for a long list of tools or unusual tools, e.g. COBOL programmer ! so take that into context too, along with the natures and other description of the job.
The bigger the bureaucracy, the more this tends to be true.
Finally, place the job in the context of the employer. Given that this is MIT (I'm close to it actually), the folks likely to have a lot of input are MIT grads, who tend to have rather, well, lets just say "high standards" and and a long list.