Relationship Model

Hi,

I have built a very small niche job website.

I want to send new opportunities out to candidates who have already applied to a job on the site, however i only want to send jobs that are relevant to them... and not a list of every new job that is posted.

I'm trying to map out a relationship between jobs.

Here are the current attributes for each job:

Job Title (can't use this as it is free text)
Salary
Sector (can't use this as a job can belong in many different sectors... i.e an IT Manager could belong to several sectors (and not just Technology)... a HR manager working in Marketing will select Marketing as their job sector)
Job Details

I was thinking of adding 3 new fields:

Job Sector (IT Job)
Job Type (IT Manager)
Level (Junior, Mid, Senior)

I could then query use the Job Sector, Job Type and Level to match new jobs / opportunities with Talent who have applied to a previous job with the same match.

Can anyone offer any thoughts or advice on this?

Thanks in advance for your help.
oo7mlAsked:
Who is Participating?
 
Julian HansenConnect With a Mentor Commented:
Sounds like you need to implement some sort of tag system - each job can be assigned 3 (or whatever) tags - in order of preference.
Job seekers have their own tags linked in order of preference.

By combining tag and ordering on both job and seeker you can come up with a heuristic.

Make the ordering number in reverse - so preferred has a higher value. Then simply multiply each matching tag from seeker by its matching tag value in poster - and sum the results. Define a cutoff point and include only those with a score above cutoff

Example
Seeker has the following tags in the following preferred order
A - 3
B - 2
C - 1
Job #1 has the following tags
X - 3
B - 2
A - 1
Score is therefore
B (2 x 2)
A (3 x 1)
= 7
Job #2
A - 3
Y - 2
C - 1
Score
A (3 x 3)
C (1 x 1)
= 10
Max score is 14 - so if we say cutoff is 8 then Job #2 makes the grade and Job #1 does not
0
 
Guy Hengel [angelIII / a3]Connect With a Mentor Billing EngineerCommented:
as you said, a job could be "related" to several sectors, or "it" levels.
hence, you should define a table holding the list of possible values there, and make a intermediate "relation" table of what job is related to what item(s) in that list of values, making it a "many-to-many" relationship.
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.