The IT job market is usually a seller's market, even in tough times like these. But some IT roles are especially difficult to fill. Here are 10 jobs that typically send companies into fits when they need to hire for them.

1: IT trainer

IT trainers play a unique role in the IT world, and they need a unique skill set. By itself, this position would be hard enough to fill. But add the fact that being a trainer differs in many ways from the typical IT job, along with the frequent need for travel, and you have a recipe for "tough hire."

2: Project manager

The biggest problem in hiring project managers is usually self-imposed: the "requirement" of a PMP certification. Why does that make it hard to hire? It isn't just that folks with PMP certification are expensive and tough to find. It's the difficulty of obtaining the certification in the first place. The certification has a "chicken and egg" logic to it: To earn it, you need to be managing projects... but it can be hard to get project management work without the cert. As a result, the talent pool is artificially small, and many otherwise well-qualified candidates get filtered out.

3: CIO/CTO/director of IT/etc.

IT leadership roles are extremely difficult to fill. Like IT trainers, leadership positions require the candidates to have skills that just are not learned in the typical IT job. Companies are forced to hire good leaders with weak (or nonexistent) technical knowledge or to hope that a technical person can learn the leadership and business skills required to be a success. It is difficult to find someone who has good "crossover" skills and whom you feel comfortable with, making leadership positions hard to fill.

4: Help desk staff

The basic problem with filling help desk jobs is that they usually pay far less than the person you really want to hire will accept. Plenty of people can do a perfectly fine job with the help desk position, despite the technical skills required and its challenges for workers (the stress of metrics they have little control over, like "average time to answer calls" and ticket closure rates, dealing with angry people over a phone, etc.). But how many of them are actually going to work for what the help desk job pays?

Most companies see the help desk as a necessary evil, a cost center to be contained. And in a way, they are right. With razor thin margins in many industries, the cost of support can make or break the profitability of a company. So it is natural for them to squeeze the salaries as hard as they can. But for managers looking for well-qualified workers, those tight budgets make it impossible to get the right help, unless they find a diamond in the rough or someone with a tough job situation.

5: Specialized programmer

Device drivers, operating systems, and mobile applications: Any idea what they have in common? The developers who know how to write those kinds of software and do a good job of it are exceedingly rare — or there is a high demand for a relatively small number of developers. Some of these positions are just so specialized that only a handful of developers are doing it. Others (like mobile applications) have lots of developers out there, but the demand is just so high that the companies looking to make a hire have positions unfilled for months at a time.

6: Pre-sales engineer

Pre-sales engineer is another IT-related job that requires a diverse range of talents beyond the technical. To make it an even harder position to fill, it is a job that requires a lot of travel. Simply put, nothing can substitute for the hands-on demonstration when it comes to closing a deal. And on top of that, the job is almost pure customer service, often in person, which many IT people do not want to deal with, especially considering that they have other job options. A pre-sales engineer needs the heart of a salesperson wrapped in the mind of an IT pro, and that's a tricky mix to find.

7: Technical writer

Now, I'm not talking about bloggers and their ilk, but the folks who do things like write product manuals and help files. There is a reason why these tasks often fall on the shoulders of the developers, even when the company is willing to spend the money on hiring a technical writer: It is hard to find people who can write coherently, in a language that the end user can grasp, and who understand the technical side of things! This isn't a matter of hiring an English major who is "tech savvy" like people assume, either. Technical writers are hard to find, and good ones are even tougher.

8: Product evangelist

The product evangelists are the "face of the company" when it comes to the technical side of their business. They are the ones giving presentations at technical conferences around the world, hanging out in forums answering questions, constantly blogging, reaching out to folks on social media... and at the same time, they need to be on the cutting edge of their industry's technical knowledge. Few IT jobs involve as much travel as product evangelist. The right person needs to have an absolute passion for the work and for the company and its specific products, as well as the technical knowledge and soft skills to handle the job. This means that even if someone is a great evangelist at one company, he or she will probably be a poor hire for any other company doing the same job.

9: IT author

Writing technical blogs and articles is often seen as an easy job, and most of us are doing it as a secondary job. (Only a few folks can put a roof over their head with this work.) There are plenty of technical people out there who can use some extra money. All the same, it's a bear to find people who are not only willing to give it a shot, but who will stick with it long enough to really become "part of the team."

There is a lot of churn, as folks are bursting with great article ideas when they are hired, and a month later they have written everything they wanted to write and are stuck with a lack of article ideas. This is why you see certain names pop up in so many places. The number of IT authors who can consistently produce high quality content year in and year out is shockingly small. And that is just for the "magazine" style writers! Even big sites like TechRepublic are frequently searching for authors because it is so difficult to find the right people. Book authors are even more difficult to find, since the role combines the details needed for a technical writer with the ability to produce a multiple-hundred page tome, typically for just a few thousand dollars.

10: Maintenance/legacy programmer

Most programmers have seen these jobs before; they are typically disguised as something else, because so few developers want them. What are they? Jobs involving the maintenance of existing applications, often ones that have been around a long time and written in a legacy technology. Few programmers are willing to take these jobs because they are the kiss of death for a career. In an industry where "cutting edge" today is "obsolete" in a few years, working with technology already considered "legacy" means that you are likely to be stuck with the job for a long, long time unless you are willing and able to reinvent yourself outside the workforce.

On top of that, the work is miserable! You have to wade through endless amounts of poorly documented code that someone who is long gone wrote a decade ago. What usually happens is that companies hire junior and entry-level developers who are struggling to find work, luring them in with an ad that promises that it doesn't matter what they know (because of course, anything they know isn't old enough to be applicable anyway) and a "willing to train" clause. Experienced and intermediate programmers tend to stay far, far away from these jobs, unless they are also niche jobs. And the people who do get hired often they realize what a mess they've gotten into and see that the longer they stay, the harder it will be for them to get out — so they quickly head for the exits.

Other hard-to-fill jobs?

Have you run into problems trying to hire qualified people for certain types of IT positions? Share your experiences with fellow TechRepublic members.