Matches are the New Hotness by Max De Marzi.
From the post:
How do you help a person without a job find one online? A search screen. How do you help a person find love online? A search screen. How do you find which camera to buy online? A search screen. How do you help a sick person self diagnose online? I have no idea, I go to the doctor. Doesn’t matter, what I want to tell you is that there is another way.
Max continues with:
Now, search is great. It usually helps people find what they’re looking for… but sometimes they have to dig through tons of stuff they don’t really want. Why? Because people can usually think of what they want, but not of what they don’t want to come back. So you end up with a tons of results that are not very relevant to your user…. and unless you are one of the major search engines, your search is not very smart. (emphasis added)
I like that, not thinking about what they want to exclude.
And why should they? How do they know how much material is available, at least until they are overwhelmed with search results.
Max walks though using Neo4j to solve this type of problem. By delivering matches, not pages of search results.
He even remarks:
Both the job candidate and job post are thinking about the same things, but if you look at a resume and a job description, you will realize they aren’t speaking the same language. Why not? It’s so obvious it has been driving me crazy for years and was one of the reasons I built Vouched and got into this Graph Database stuff in the first place. So let’s solve this problem with a graph.
I do have a quibble with his solution of “solving” the different language problem, say for job skills with sub-string matching.
What happens if the job seeker lists their skills are including “mapreduce,” and “yarn,” but the ad says “Haoop?” You or I would recognize the need for a match.
I don’t see that in Max’s solution.
Do you?
I posted the gist of this in a comment at Max’s blog.
Visit Max’s post to see his response in full but in short Max favors normalization of data.
Normalization is a choice you can make, but it should not be a default or unconscious one.