Finding talent is tough in any field, in the tech field it can be especially hard and there are many forces at play. You need to find someone who works well with a team, who has the enough experience with your domain so that you don't have to spend inordinate amounts of time training, someone who can learn the way your systems work and quickly come up to speed. It's a strange mixture of knowledge, wisdom, raw talent, social aptitude, and a flexible mind. Different situations call for different focuses. A startup might need a very low ramp-up time, someone with lots of experience in the field, and a prove track record. A well established company might be willing to pay the costs to train a worker if they think that in the long run the work they'll do will win out. In the end determining any one of these metrics would be difficult, but collectively they provide a substantial challenge. The difficulty of which is magnified when you step outside of traditional tech fields.
For a small or medium size business without a preexisting technical team hiring a new programmer, web developer or IT staff, it's a treacherous adventure in guess work and gut feelings. Without the necessary knowledge or training to determine technical ability many small business owners are duped by jargon filled talk or a good looking resume. Where as in the technical field we might be fully aware that simple possessing a degree in Computer science does not qualify someone as knowledgeable about their work. Not only that but these kind of decisions pose significant risk to the business. People put into these positions often hold the keys to a company. Credit card transactions, passwords to websites and servers, and contact with customers.
I often thought about this problem while in Seattle and having regular lunch meetings with fledging startups or business folks looking to make the leap into one. Their problem isn't well solved by recruiters since they suffer both from an inability to describe their desired applicants and then an inability to determine if any of the candidates they do encounter are actually qualified. Recruiters traditionally fail in this role because they too often lack the technical knowledge to properly filter candidates, or to rephrase the words of their client to better reach candidates. As a result recruiters take more of a shotgun approach. Sending every remotely qualified candidate their way, which leaves the business owner in approximately the same place as he was before. Lost in a sea of talent which he has no way of determining the quality.
In Seattle I considered a small time consultancy. I liked to think of it as lunch time HR. Ask a flat rate and work directly with whoever was doing their hiring to help them work out a good description of the position, and later to work on screening, or working on interviews with them. Basically providing the technical background they lack and desperately need to be able to make a secure hire.