Title Normalization

Expectation

The goal here is to use these inputs [Raw Job Title, Job Description, Raw Company] and to get these outputs [Normalized Title, Extracted Skills, LOT Occupation (Classified)].

Workflow #1

Workflow #1 - Request #1

Here is the POST call and body.

POST https://classification.emsicloud.com/classifications/2023.9/postings/classify
{
  "context": {
    "company": "Starpoint Solutions",
    "title": "Product Manager",
    "body": "This is a sample job posting for a full-time Software Product Manager. This person will be developing a new product to meet verifiable market needs. The person will be responsible for doing market analysis, and developing a go to market strategy for a new software product in the finance space. The SaaS Product will be built with a collection of rest APIs and Snowflake databases to power visualizations for the end user. This role pays between $90,000 - $115,000 annual salary. We are open to hiring remotely. "
  },
  "outputs": [
    "skill",     
    "naics",     
    "title",     
    "lot",     
    "company",    
    "salary",     
    "remoteType",     
    "educationLevel"   
  ] 
}

Workflow #1 - Response #1

{
  "data":
  {
    "company": {
      "id": "38076262"
    },
    "educationLevel": [],
    "lot": {
      "id": "27111321",
      "confidence": 1
    },
    "naics": {
      "id": "541519"
    },
    "remoteType": {
      "provisionalId": "[None]"
    },
    "salary": {
      "gte": 90000,
      "lte": 115000,
      "units": "USD"
    },
    "skill": [
      {
        "id": "ESB80940F2FF8F573D42",
        "confidence": 1 
      },
      { 
        "id": "KS123MC78KV644P5DDZ0", 
        "confidence": 1 
      },           
      {                
        "id": "KS1282M68WL9T4YH3SLF",  
        "confidence": 1 
      },           
      {           
        "id": "KS4401V5WX78L6JX0NW7", 
        "confidence": 1
      },           
      {              
        "id": "ES3CDF4F5564949F81DB", 
        "confidence": 1    
      },           
      {              
        "id": "KS1264Z76VQV2ZW2MB02",  
        "confidence": 1          
      },          
      {                
        "id": "KS1270P6SLFCFT476Y3R",
        "confidence": 0.6238285899162292
      },          
      {       
        "id": "KS1220G68PD5STH2DL2W",    
        "confidence": 0.546417236328125 
      }       
    ],   
    "title": { 
      "id": "ETAA6FBD39376F5BBC",
      "confidence": 1
    },     
    "warnings": []
  }

Workflow #1 - Request #2

In this request we are...

GET https://classification.emsicloud.com/taxonomies/occupations/versions/6.0.1/concepts?q=id:27111321&fields=name,id,level,levelName,descriptionUs&limit=1000

Workflow #1 - Response #2

{    
  "data": [ 
    {        
      "id": "27111321", 
      "name": "Software Product Manager",
      "levelName": "specializedOccupation", 
      "level": 3, 
      "descriptionUs": "A Software Product Manager leads and manages one or several software products from the inception to the phase-out in order to maximize business value. Works across many teams in order to ensure business success for the product."     
    }   
  ],    
  "warnings": [],  
  "errors": []
}

Workflow #2

In this workflow we input the Raw Job Title to get the id number. We have two potential workflows.

Workflow #2 - Request #1

POST https://classification.emsicloud.com/classifications/2023.9/postings/classify
{  
  "context": {  
    "title": "Product Manager - AI Tools" 
  },  
  "outputs": [   
    "title"  
  ] 
}

Workflow #2 - Response #1

{    
  "data": {
    "title": { 
      "id": "ETAA6FBD39376F5BBC",
      "confidence": 0.4740937352180481  
    }    
  },    
  "warnings": [] 
}

Now for Workflow #2's second step we have two options - a and b.

Workflow #2a - Request #2

Here we are...

POST https://classification.emsicloud.com/mappings/titles_v5.3.0_lot_v6.1.4
{     
  "ids": ["ETAA6FBD39376F5BBC"]  
}

Workflow #2a - Response #2

{    
  "data": {  
    "ETAA6FBD39376F5BBC": [
      "27111320"
    ]
  },
  "errors": [],
  "warnings": []
}

Workflow #2a - Request #3

GET https://classification.emsicloud.com/taxonomies/lot/versions/6.5.0/concepts?q=id:27111320&fields=name,id,level,levelName,descriptionUs&limit=1000

Workflow #2a - Response #3

{    
  "data": [  
    {          
      "id": "27111320",   
      "name": "Product Manager (General)",   
      "levelName": "specializedOccupation",  
      "level": 3,          
      "descriptionUs": "A Product Manager manages and coordinates all the processes involved in creating a product.  Oversees work involved with product design, production, distribution, marketing and sales."
    }    
  ],    
  "warnings": [],  
  "errors": [] 
}

Workflow #2b - Request #2

GET https://classification.emsicloud.com/classifications/2023.9/postings/classify

Workflow #2b - Response #2

{    
  "data": [ 
    {      
      "id": "ETAA6FBD39376F5BBC",  
      "name": "Product Manager",    
      "levelName": "title",         
      "level": 0    
    }   
  ],   
  "warnings": [],  
  "errors": [] 
}