I have the following problem:
A company, let's call it X, has a job-adds website. It works as a marketplace where job-seekers and companies that have job vacancies can meet.
Their business model is such that job-seekers pay a subscription to get access to the website after a trial period. Companies, on the other hand, don't pay anything to post job-adds.
In order to attract companies to post jobs on the website they call them and ask if they're interested. They have a database with N companies that did business with them in the past. Out of those "N" they can only call 20% due to budget and personnel constraints.
They select those 20% out of simple heuristic: companies that posted job adds in the last six months.
What they want is to call companies that have high probability of posting a job add that will generate a match. They consider that a match has happened based on a proxy: the company contacted n different candidates for a particular job-add.
I want to find a data-driven approach to select the best companies for them to call. In other words, provide them with a list of companies that have a high probability of generating adds that match with their current database of users.
The problem I'm having is how to transform this business problem into a machine learning solution.
What I have thought so far is to build a classification model. Each row is a job-add. The features are variables related to the company (size, location), to the user (age, CV, last time logged in), and the job-add itself (salary,education required, position, industry). The target variable is a binary of "the job had a mach or not."
The problem with my approach is that the model is not actually learning anything since my target variable is already known for each job-post (I know which job-adds had a match and which didn't).
I'm looking for some ideas on how I can structure this problem in a data-driven framework. Should I continue with my classification model? Maybe some type of collaborative filtering? I'm sure machine learning can provide better results than their simple heuristic. Thanks!
The data I have:
- User data, including CV;
- Who applied to what job and when;
- Data from the companies that posted job-adds;
- Contacts made by companies to job-seekers (This just tells me if the company clicked a button to look at the user's contact info);