Skip to main content

This is hush hush recruiter app

Project description

PROJECT HUSH RECRUITER

  • linkedIn api response structure:

a = [{'entityUrn': '', 'profile': { 'summary': '', 'industryName': '', 'currentLocation': '', 'student': None, 'headline': '' }, 'education': [ {'schoolName': '', 'startDate_month': None, 'startDate_year': None, 'endDate_month': None, 'endDate_year': None}, {'schoolName': '', 'startDate_month': None, 'startDate_year': None, 'endDate_month': None, 'endDate_year': None} ], 'projectView': [ { 'title': '', 'description': '', 'url': None}, { 'title': '', 'description': '', 'url': None}, { 'title': '', 'description': '', 'url': None} ], 'skillView': [ {'name': 'Python (Programming Language)'} ]} ]

Guidelines for data extraction

  1. Select what all fields you are capturing.
  2. Try to convert all these fields into numeric data (think of scoring these fields on a scale of 0-10)
  3. A rule can be defined to calculate the scores of every field
  4. Naming conventions :
    • all field name should be lowercase , ' ' is separated by '_'
    • If you can produce multiple subfields from a single field then follow naming convention -> <field_name>_<subfield_name>
  • PSUEDO code for extracting data from public apis:
    • LinkedIn: viewProfile API Field - email (apply regex in summary) Field - Firstname Field - Lastname Field - text_data_headline Field - text_data_summary Field - text_data_work_descriptions - fetch latest description Field - numeric_data_work_experience *(only job role): rule_1 : extract the job role, then score +=add(match(job role, input job role) -> percent, years of experience ) skillCategory API Field - numeric_data_skills: skillCategory API - elements/[list of skill categories/endorsedSkills/[list of skills]/skill.name, endorsementCount, if insights then insights.insightText.text] rule_1 : skill_system_design has value 5 by default , rule_2 : if this skill is endorsed then +1 , rule_3 : if skill has linkedin skill assessment then +2 posts api Field - text_data_posts (top 5) Field - numeric_data_posts: logic : to filter relevant posts rule_1: fetch likes count for the relevant posts certifications api Field - numeric_data_certification: if timePeriod then if isIfRecent(months=3) then consider for scoring **optional -- check if the account activity isRecent StackOverflow: scores per tags badges per tags Number of answers reputation number of upvotes in each answer in top post

    • Github:

      • of stars in each repo
      • of contibutions
      • of forks
      • achievements(badges)

Algorithm :

score_solution_architect = field_1 * weight_field_1 + .... + field_n * weight_field_n weight_field_* will be defined manually, its not necessary that all fields have to be defined in case a field is not defined then it will be 0

Algorithm for merging the data from different source :

  • check if reference of the other source is defined in a source
  • based on first name and last name (calculate similarity % between first name and last name)

Python packaging

  • python -n build in root directory
  • twine upload dist/* in root directory

Docker commands used:

  • docker build -t hushrecruiterimage .
  • docker run --env-file ./env_variables.list hushrecruiterimage make sure to fill the access token details in the .list file
  • Tagging the image : docker tag hushrecruiterimage prabhupad26/big-data-prog-sol:hushrecruiterimage
  • Pushing the tagged image : docker push prabhupad26/big-data-prog-sol:hushrecruiterimage

Sending test link to the selected candidates via e-mail

Once candidates are selected through an algorithm, selected candidates receive a test link via mail. The test link contains 3 coding questions which need to be submitted within a specified time, otherwise the link will expire.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

recruiter_app-1.0.5.tar.gz (5.4 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

recruiter_app-1.0.5-py3-none-any.whl (5.4 MB view details)

Uploaded Python 3

File details

Details for the file recruiter_app-1.0.5.tar.gz.

File metadata

  • Download URL: recruiter_app-1.0.5.tar.gz
  • Upload date:
  • Size: 5.4 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.8.9

File hashes

Hashes for recruiter_app-1.0.5.tar.gz
Algorithm Hash digest
SHA256 f03147468cbb0409d7623973762db37ebcbf1ac21102b8f26f7dc1022b4a99af
MD5 37e735bae0692bd27c680be0efa182b0
BLAKE2b-256 39cf59e2194bfeda9943eca1ae3dc43784206662ab0083527c7af74f89820849

See more details on using hashes here.

File details

Details for the file recruiter_app-1.0.5-py3-none-any.whl.

File metadata

  • Download URL: recruiter_app-1.0.5-py3-none-any.whl
  • Upload date:
  • Size: 5.4 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.8.9

File hashes

Hashes for recruiter_app-1.0.5-py3-none-any.whl
Algorithm Hash digest
SHA256 575402cb77dca668cfe9447eb48d8c110931adb12b60e7fe9d46aae638002aeb
MD5 991d90644bc24b24892416f30b62128a
BLAKE2b-256 aae4144f5faf607f63fd0ba529b8ef76b8a39dafde40eeb2a2d32442a5d77eaa

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page